Alternatives to pgRouting logo

Alternatives to pgRouting

Valhalla, OSRM, Neo4j, JavaScript, and Git are the most popular alternatives and competitors to pgRouting.
10
23
+ 1
8

What is pgRouting and what are its top alternatives?

pgRouting is an open-source extension of PostgreSQL that provides a set of advanced routing functionalities. It allows users to perform complex network analysis, such as shortest path calculation, traveling salesman problem, and vehicle routing problem. Key features of pgRouting include support for various algorithms like Dijkstra, A* (A-star), and driving distance, as well as integration with OpenStreetMap data. However, pgRouting may be challenging for users who are not familiar with SQL and database management, and it lacks some advanced optimization features found in commercial routing solutions.

  1. OSRM (Open Source Routing Machine): OSRM is a high-performance routing engine designed for OpenStreetMap data, offering fast route calculation and multiple profile support. Pros: Quick route computation, suitable for large datasets. Cons: Limited support for turn restrictions and alternative routes.
  2. GraphHopper: GraphHopper is a flexible routing engine that supports multiple algorithms and custom vehicle profiles. Key features include real-time traffic updates and isochrone calculations. Pros: Easy setup, detailed documentation. Cons: Paid services may be required for certain features.
  3. Valhalla: Valhalla is an open-source routing engine that supports dynamic costing options, such as cycling routes and truck restrictions. It also offers advanced optimization features like time window constraints. Pros: Customizable routing profiles, multi-modal routing. Cons: Complex configuration settings may be overwhelming for beginners.
  4. ORS (OpenRouteService): ORS is a routing service that is based on OpenStreetMap data and provides options for pedestrian, cycling, and driving routes, as well as wheelchair accessibility. Pros: User-friendly interface, detailed route options. Cons: Limited customization for advanced routing scenarios.
  5. ITN Converter: ITN Converter is a free tool for converting and editing GPS waypoints, routes, and tracks. It supports various file formats and offers batch conversion capabilities. Pros: Simple interface, comprehensive file format support. Cons: Limited routing functionality compared to specialized routing engines.
  6. Open Source Routing Library (OSR): OSR is a C++ library for route calculations with OpenStreetMap data, providing speed and memory-efficient route planning. Pros: High-performance routing engine, suitable for large-scale networks. Cons: Requires coding knowledge for customization.
  7. Google Maps Platform: Google Maps Platform offers a range of routing APIs for developers, including directions, distance matrix, and geocoding services. Pros: Integration with other Google services, up-to-date map data. Cons: Limited free usage tier, pricing based on usage volume.
  8. HERE Routing API: HERE Routing API provides precise routing and navigation services with real-time traffic updates, public transit information, and truck routing options. Pros: Robust route calculation, advanced transportation features. Cons: Subscription-based pricing model, complex API documentation.
  9. Mapbox Directions API: Mapbox Directions API offers route optimization, traffic-aware navigation, and isochrone calculations for custom map applications. Pros: Developer-friendly SDKs, customizable design options. Cons: Limited free tier, pricing based on usage metrics.
  10. GraphHopper Directions API: GraphHopper Directions API provides routing services with fast response times, mobile SDKs, and customizable vehicle profiles. Pros: Fast route calculation, offline routing capabilities. Cons: Premium pricing for certain features, limited community support.

Top Alternatives to pgRouting

  • Valhalla
    Valhalla

    Valhalla is Mapzen’s open-source routing service for client-side routing applications and hosted solutions. If you are looking to avoid the challenge of data creation and database administration, you can get high-quality routes and navigational guidance with clear directions through a simple API call. ...

  • OSRM
    OSRM

    It is a C++ implementation of a high-performance routing engine for shortest paths in road networks ...

  • Neo4j
    Neo4j

    Neo4j stores data in nodes connected by directed, typed relationships with properties on both, also known as a Property Graph. It is a high performance graph store with all the features expected of a mature and robust database, like a friendly query language and ACID transactions. ...

  • Slick
    Slick

    It is a modern database query and access library for Scala. It allows you to work with stored data almost as if you were using Scala collections while at the same time giving you full control over when a database access happens and which data is transferred. ...

  • Spring Data
    Spring Data

    It makes it easy to use data access technologies, relational and non-relational databases, map-reduce frameworks, and cloud-based data services. This is an umbrella project which contains many subprojects that are specific to a given database. ...

  • DataGrip
    DataGrip

    A cross-platform IDE that is aimed at DBAs and developers working with SQL databases. ...

  • DBeaver
    DBeaver

    It is a free multi-platform database tool for developers, SQL programmers, database administrators and analysts. Supports all popular databases: MySQL, PostgreSQL, SQLite, Oracle, DB2, SQL Server, Sybase, Teradata, MongoDB, Cassandra, Redis, etc. ...

  • Microsoft SQL Server Management Studio
    Microsoft SQL Server Management Studio

    It is an integrated environment for managing any SQL infrastructure, from SQL Server to Azure SQL Database. It provides tools to configure, monitor, and administer instances of SQL Server and databases. Use it to deploy, monitor, and upgrade the data-tier components used by your applications, as well as build queries and scripts. ...

pgRouting alternatives & related posts

Valhalla logo

Valhalla

14
58
2
An open source routing engine
14
58
+ 1
2
PROS OF VALHALLA
  • 2
    Open source
CONS OF VALHALLA
    Be the first to leave a con

    related Valhalla posts

    OSRM logo

    OSRM

    32
    83
    0
    Modern C++ routing engine for shortest paths in road networks
    32
    83
    + 1
    0
    PROS OF OSRM
      Be the first to leave a pro
      CONS OF OSRM
        Be the first to leave a con

        related OSRM posts

        Stephen Gheysens
        Lead Solutions Engineer at Inscribe · | 7 upvotes · 407.9K views

        Google Maps lets "property owners and their authorized representatives" upload indoor maps, but this appears to lack navigation ("wayfinding").

        MappedIn is a platform and has SDKs for building indoor mapping experiences (https://www.mappedin.com/) and ESRI ArcGIS also offers some indoor mapping tools (https://www.esri.com/en-us/arcgis/indoor-gis/overview). Finally, there used to be a company called LocusLabs that is now a part of Atrius and they were often integrated into airlines' apps to provide airport maps with wayfinding (https://atrius.com/solutions/personal-experiences/personal-wayfinder/).

        I previously worked at Mapbox and while I believe that it's a great platform for building map-based experiences, they don't have any simple solutions for indoor wayfinding. If I were doing this for fun as a side-project and prioritized saving money over saving time, here is what I would do:

        • Create a graph-based dataset representing the walking paths around your university, where nodes/vertexes represent the intersections of paths, and edges represent paths (literally paths outside, hallways, short path segments that represent entering rooms). You could store this in a hosted graph-based database like Neo4j, Amazon Neptune , or Azure Cosmos DB (with its Gremlin API) and use built-in "shortest path" queries, or deploy a PostgreSQL service with pgRouting.

        • Add two properties to each edge: one property for the distance between its nodes (libraries like @turf/helpers will have a distance function if you have the latitude & longitude of each node), and another property estimating the walking time (based on the distance). Once you have these values saved in a graph-based format, you should be able to easily query and find the data representation of paths between two points.

        • At this point, you'd have the routing problem solved and it would come down to building a UI. Mapbox arguably leads the industry in developer tools for custom map experiences. You could convert your nodes/edges to GeoJSON, then either upload to Mapbox and create a Tileset to visualize the paths, or add the GeoJSON to the map on the fly.

        *You might be able to use open source routing tools like OSRM (https://github.com/Project-OSRM/osrm-backend/issues/6257) or Graphhopper (instead of a custom graph database implementation), but it would likely be more involved to maintain these services.

        See more
        Neo4j logo

        Neo4j

        1.2K
        1.4K
        352
        The world’s leading Graph Database
        1.2K
        1.4K
        + 1
        352
        PROS OF NEO4J
        • 70
          Cypher – graph query language
        • 61
          Great graphdb
        • 33
          Open source
        • 31
          Rest api
        • 27
          High-Performance Native API
        • 23
          ACID
        • 21
          Easy setup
        • 17
          Great support
        • 11
          Clustering
        • 9
          Hot Backups
        • 8
          Great Web Admin UI
        • 7
          Powerful, flexible data model
        • 7
          Mature
        • 6
          Embeddable
        • 5
          Easy to Use and Model
        • 4
          Best Graphdb
        • 4
          Highly-available
        • 2
          It's awesome, I wanted to try it
        • 2
          Great onboarding process
        • 2
          Great query language and built in data browser
        • 2
          Used by Crunchbase
        CONS OF NEO4J
        • 9
          Comparably slow
        • 4
          Can't store a vertex as JSON
        • 1
          Doesn't have a managed cloud service at low cost

        related Neo4j posts

        We have an in-house build experiment management system. We produce samples as input to the next step, which then could produce 1 sample(1-1) and many samples (1 - many). There are many steps like this. So far, we are tracking genealogy (limited tracking) in the MySQL database, which is becoming hard to trace back to the original material or sample(I can give more details if required). So, we are considering a Graph database. I am requesting advice from the experts.

        1. Is a graph database the right choice, or can we manage with RDBMS?
        2. If RDBMS, which RDMS, which feature, or which approach could make this manageable or sustainable
        3. If Graph database(Neo4j, OrientDB, Azure Cosmos DB, Amazon Neptune, ArangoDB), which one is good, and what are the best practices?

        I am sorry that this might be a loaded question.

        See more

        I'm evaluating the use of RedisGraph vs Microsoft SQL Server 2019 graph features to build a social graph. One of the key criteria is high availability and cross data center replication of data. While Neo4j is a much-matured solution in general, I'm not accounting for it due to the cost & introduction of a new stack in the ecosystem. Also, due to the nature of data & org policies, using a cloud-based solution won't be a viable choice.

        We currently use Redis as a cache & SQL server 2019 as RDBMS.

        I'm inclining towards SQL server 2019 graph as we already use SQL server extensively as relational database & have all the HA and cross data center replication setup readily available. I still need to evaluate if it fulfills our need as a graph DB though, I also learned that SQL server 2019 is still a new player in the market and attempts to fit a graph-like query on top of a relational model (with node and edge tables). RedisGraph seems very promising. However, I'm not totally sure about HA, Graph data backup, cross-data center support.

        See more
        Slick logo

        Slick

        9.2K
        1.2K
        0
        Database query and access library for Scala
        9.2K
        1.2K
        + 1
        0
        PROS OF SLICK
          Be the first to leave a pro
          CONS OF SLICK
            Be the first to leave a con

            related Slick posts

            Spring Data logo

            Spring Data

            587
            404
            0
            Provides a consistent approach to data access – relational, non-relational, map-reduce, and beyond
            587
            404
            + 1
            0
            PROS OF SPRING DATA
              Be the first to leave a pro
              CONS OF SPRING DATA
                Be the first to leave a con

                related Spring Data posts

                Остап Комплікевич

                I need some advice to choose an engine for generation web pages from the Spring Boot app. Which technology is the best solution today? 1) JSP + JSTL 2) Apache FreeMarker 3) Thymeleaf Or you can suggest even other perspective tools. I am using Spring Boot, Spring Web, Spring Data, Spring Security, PostgreSQL, Apache Tomcat in my project. I have already tried to generate pages using jsp, jstl, and it went well. However, I had huge problems via carrying already created static pages, to jsp format, because of syntax. Thanks.

                See more
                DataGrip logo

                DataGrip

                552
                646
                17
                A database IDE for professional SQL developers
                552
                646
                + 1
                17
                PROS OF DATAGRIP
                • 4
                  Works on Linux, Windows and MacOS
                • 3
                  Code analysis
                • 2
                  Diff viewer
                • 2
                  Wide range of DBMS support
                • 1
                  Generate ERD
                • 1
                  Quick-fixes using keyboard shortcuts
                • 1
                  Database introspection on 21 different dbms
                • 1
                  Export data using a variety of formats using open api
                • 1
                  Import data
                • 1
                  Code completion
                CONS OF DATAGRIP
                  Be the first to leave a con

                  related DataGrip posts

                  DBeaver logo

                  DBeaver

                  513
                  700
                  66
                  A Universal Database Tool
                  513
                  700
                  + 1
                  66
                  PROS OF DBEAVER
                  • 21
                    Free
                  • 13
                    Platform independent
                  • 9
                    Automatic driver download
                  • 7
                    Import-Export Data
                  • 6
                    Simple to use
                  • 4
                    Move data between databases
                  • 4
                    Wide range of DBMS support
                  • 1
                    SAP Hana DB support
                  • 1
                    Themes
                  CONS OF DBEAVER
                    Be the first to leave a con

                    related DBeaver posts

                    Manikandan Shanmugam
                    Software Engineer at Blitzscaletech Software Solution · | 4 upvotes · 1.3M views
                    Shared insights
                    on
                    AzureDataStudioAzureDataStudioDBeaverDBeaver

                    Which tools are preferred if I choose to work on more data side? Which one is good if I decide to work on web development? I'm using DBeaver and am now considering a move to AzureDataStudio to break the monotony while working. I would like to hear your opinion. Which one are you using, and what are the things you are missing in dbeaver or data studio.

                    See more
                    Microsoft SQL Server Management Studio logo

                    Microsoft SQL Server Management Studio

                    487
                    423
                    0
                    An integrated environment for managing any SQL infrastructure
                    487
                    423
                    + 1
                    0
                    PROS OF MICROSOFT SQL SERVER MANAGEMENT STUDIO
                      Be the first to leave a pro
                      CONS OF MICROSOFT SQL SERVER MANAGEMENT STUDIO
                        Be the first to leave a con

                        related Microsoft SQL Server Management Studio posts

                        Kelsey Doolittle

                        We have a 138 row, 1700 column database likely to grow at least a row and a column every week. We are mostly concerned with how user-friendly the graphical management tools are. I understand MySQL has MySQL WorkBench, and Microsoft SQL Server has Microsoft SQL Server Management Studio. We have about 6 months to migrate our Excel database to one of these DBMS, and continue (hopefully manually) importing excel files from then on. Any tips appreciated!

                        See more