Alternatives to Dgraph logo

Alternatives to Dgraph

Neo4j, Titan, ArangoDB, Cayley, and GraphQL are the most popular alternatives and competitors to Dgraph.
111
185
+ 1
9

What is Dgraph and what are its top alternatives?

Dgraph's goal is to provide Google production level scale and throughput, with low enough latency to be serving real time user queries, over terabytes of structured data. Dgraph supports GraphQL-like query syntax, and responds in JSON and Protocol Buffers over GRPC and HTTP.
Dgraph is a tool in the Graph Databases category of a tech stack.
Dgraph is an open source tool with 18K GitHub stars and 1.4K GitHub forks. Here’s a link to Dgraph's open source repository on GitHub

Top Alternatives to Dgraph

  • 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. ...

  • Titan
    Titan

    Titan is a scalable graph database optimized for storing and querying graphs containing hundreds of billions of vertices and edges distributed across a multi-machine cluster. Titan is a transactional database that can support thousands of concurrent users executing complex graph traversals in real time. ...

  • ArangoDB
    ArangoDB

    A distributed free and open-source database with a flexible data model for documents, graphs, and key-values. Build high performance applications using a convenient SQL-like query language or JavaScript extensions. ...

  • Cayley
    Cayley

    Cayley is an open-source graph inspired by the graph database behind Freebase and Google's Knowledge Graph. Its goal is to be a part of the developer's toolbox where Linked Data and graph-shaped data (semantic webs, social networks, etc) in general are concerned. ...

  • GraphQL
    GraphQL

    GraphQL is a data query language and runtime designed and used at Facebook to request and deliver data to mobile and web apps since 2012. ...

  • MongoDB
    MongoDB

    MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding. ...

  • JanusGraph
    JanusGraph

    It is a scalable graph database optimized for storing and querying graphs containing hundreds of billions of vertices and edges distributed across a multi-machine cluster. It is a transactional database that can support thousands of concurrent users executing complex graph traversals in real time. ...

  • Neptune
    Neptune

    It brings organization and collaboration to data science projects. All the experiement-related objects are backed-up and organized ready to be analyzed, reproduced and shared with others. Works with all common technologies and integrates with other tools. ...

Dgraph alternatives & related posts

Neo4j logo

Neo4j

1K
1.2K
352
The world’s leading Graph Database
1K
1.2K
+ 1
352
PROS OF NEO4J
  • 70
    Cypher – graph query language
  • 61
    Great graphdb
  • 32
    Open source
  • 31
    Rest api
  • 27
    High-Performance Native API
  • 24
    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
    Highly-available
  • 4
    Best Graphdb
  • 2
    Used by Crunchbase
  • 2
    Great onboarding process
  • 2
    It's awesome, I wanted to try it
  • 2
    Great query language and built in data browser
CONS OF NEO4J
  • 5
    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
Titan logo

Titan

36
51
0
Distributed Graph Database
36
51
+ 1
0
PROS OF TITAN
    Be the first to leave a pro
    CONS OF TITAN
      Be the first to leave a con

      related Titan posts

      ArangoDB logo

      ArangoDB

      246
      380
      184
      A distributed open-source database with a flexible data model for documents, graphs, and key-values.
      246
      380
      + 1
      184
      PROS OF ARANGODB
      • 35
        Grahps and documents in one DB
      • 26
        Intuitive and rich query language
      • 24
        Open source
      • 23
        Good documentation
      • 18
        Joins for collections
      • 15
        Foxx is great platform
      • 14
        Great out of the box web interface with API playground
      • 6
        Clustering
      • 6
        Low maintenance efforts
      • 6
        Good driver support
      • 5
        Easy microservice creation with foxx
      • 4
        You can write true backendless apps
      • 2
        Managed solution available
      • 0
        Performance
      CONS OF ARANGODB
      • 3
        Web ui has still room for improvement
      • 2
        No support for blueprints standard, using custom AQL

      related ArangoDB 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

      Hello All, I'm building an app that will enable users to create documents using ckeditor or TinyMCE editor. The data is then stored in a database and retrieved to display to the user, these docs can contain image data also. The number of pages generated for a single document can go up to 1000. Therefore by design, each page is stored in a separate JSON. I'm wondering which database is the right one to choose between ArangoDB and PostgreSQL. Your thoughts, advice please. Thanks, Kashyap

      See more
      Cayley logo

      Cayley

      24
      69
      6
      An open-source graph database
      24
      69
      + 1
      6
      PROS OF CAYLEY
      • 6
        Full open source
      CONS OF CAYLEY
        Be the first to leave a con

        related Cayley posts

        GraphQL logo

        GraphQL

        25.7K
        21.1K
        298
        A data query language and runtime
        25.7K
        21.1K
        + 1
        298
        PROS OF GRAPHQL
        • 73
          Schemas defined by the requests made by the user
        • 62
          Will replace RESTful interfaces
        • 60
          The future of API's
        • 48
          The future of databases
        • 12
          Self-documenting
        • 11
          Get many resources in a single request
        • 5
          Ask for what you need, get exactly that
        • 4
          Query Language
        • 3
          Type system
        • 3
          Fetch different resources in one request
        • 3
          Evolve your API without versions
        • 2
          GraphiQL
        • 2
          Easy setup
        • 2
          Ease of client creation
        • 1
          "Open" document
        • 1
          Easy to learn
        • 1
          Better versioning
        • 1
          Standard
        • 1
          Backed by Facebook
        • 1
          1. Describe your data
        • 1
          Fast prototyping
        • 1
          Good for apps that query at build time. (SSR/Gatsby)
        CONS OF GRAPHQL
        • 3
          Hard to migrate from GraphQL to another technology
        • 3
          More code to type.
        • 1
          All the pros sound like NFT pitches
        • 1
          Works just like any other API at runtime
        • 1
          Takes longer to build compared to schemaless.

        related GraphQL posts

        Shared insights
        on
        Node.jsNode.jsGraphQLGraphQLMongoDBMongoDB

        I just finished the very first version of my new hobby project: #MovieGeeks. It is a minimalist online movie catalog for you to save the movies you want to see and for rating the movies you already saw. This is just the beginning as I am planning to add more features on the lines of sharing and discovery

        For the #BackEnd I decided to use Node.js , GraphQL and MongoDB:

        1. Node.js has a huge community so it will always be a safe choice in terms of libraries and finding solutions to problems you may have

        2. GraphQL because I needed to improve my skills with it and because I was never comfortable with the usual REST approach. I believe GraphQL is a better option as it feels more natural to write apis, it improves the development velocity, by definition it fixes the over-fetching and under-fetching problem that is so common on REST apis, and on top of that, the community is getting bigger and bigger.

        3. MongoDB was my choice for the database as I already have a lot of experience working on it and because, despite of some bad reputation it has acquired in the last months, I still believe it is a powerful database for at least a very long list of use cases such as the one I needed for my website

        See more
        Nick Rockwell
        SVP, Engineering at Fastly · | 44 upvotes · 1.9M views

        When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?

        So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.

        React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.

        Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.

        See more
        MongoDB logo

        MongoDB

        72.4K
        61.3K
        4.1K
        The database for giant ideas
        72.4K
        61.3K
        + 1
        4.1K
        PROS OF MONGODB
        • 828
          Document-oriented storage
        • 593
          No sql
        • 549
          Ease of use
        • 465
          Fast
        • 408
          High performance
        • 256
          Free
        • 215
          Open source
        • 180
          Flexible
        • 143
          Replication & high availability
        • 110
          Easy to maintain
        • 42
          Querying
        • 38
          Easy scalability
        • 37
          Auto-sharding
        • 36
          High availability
        • 31
          Map/reduce
        • 27
          Document database
        • 25
          Full index support
        • 25
          Easy setup
        • 16
          Reliable
        • 15
          Fast in-place updates
        • 14
          Agile programming, flexible, fast
        • 12
          No database migrations
        • 8
          Easy integration with Node.Js
        • 8
          Enterprise
        • 6
          Enterprise Support
        • 5
          Great NoSQL DB
        • 3
          Drivers support is good
        • 3
          Aggregation Framework
        • 3
          Support for many languages through different drivers
        • 2
          Awesome
        • 2
          Schemaless
        • 2
          Managed service
        • 2
          Fast
        • 2
          Easy to Scale
        • 1
          Consistent
        • 1
          Acid Compliant
        CONS OF MONGODB
        • 6
          Very slowly for connected models that require joins
        • 3
          Not acid compliant
        • 1
          Proprietary query language

        related MongoDB posts

        Jeyabalaji Subramanian

        Recently we were looking at a few robust and cost-effective ways of replicating the data that resides in our production MongoDB to a PostgreSQL database for data warehousing and business intelligence.

        We set ourselves the following criteria for the optimal tool that would do this job: - The data replication must be near real-time, yet it should NOT impact the production database - The data replication must be horizontally scalable (based on the load), asynchronous & crash-resilient

        Based on the above criteria, we selected the following tools to perform the end to end data replication:

        We chose MongoDB Stitch for picking up the changes in the source database. It is the serverless platform from MongoDB. One of the services offered by MongoDB Stitch is Stitch Triggers. Using stitch triggers, you can execute a serverless function (in Node.js) in real time in response to changes in the database. When there are a lot of database changes, Stitch automatically "feeds forward" these changes through an asynchronous queue.

        We chose Amazon SQS as the pipe / message backbone for communicating the changes from MongoDB to our own replication service. Interestingly enough, MongoDB stitch offers integration with AWS services.

        In the Node.js function, we wrote minimal functionality to communicate the database changes (insert / update / delete / replace) to Amazon SQS.

        Next we wrote a minimal micro-service in Python to listen to the message events on SQS, pickup the data payload & mirror the DB changes on to the target Data warehouse. We implemented source data to target data translation by modelling target table structures through SQLAlchemy . We deployed this micro-service as AWS Lambda with Zappa. With Zappa, deploying your services as event-driven & horizontally scalable Lambda service is dumb-easy.

        In the end, we got to implement a highly scalable near realtime Change Data Replication service that "works" and deployed to production in a matter of few days!

        See more
        Robert Zuber

        We use MongoDB as our primary #datastore. Mongo's approach to replica sets enables some fantastic patterns for operations like maintenance, backups, and #ETL.

        As we pull #microservices from our #monolith, we are taking the opportunity to build them with their own datastores using PostgreSQL. We also use Redis to cache data we’d never store permanently, and to rate-limit our requests to partners’ APIs (like GitHub).

        When we’re dealing with large blobs of immutable data (logs, artifacts, and test results), we store them in Amazon S3. We handle any side-effects of S3’s eventual consistency model within our own code. This ensures that we deal with user requests correctly while writes are in process.

        See more
        JanusGraph logo

        JanusGraph

        37
        81
        0
        Open-source, distributed graph database
        37
        81
        + 1
        0
        PROS OF JANUSGRAPH
          Be the first to leave a pro
          CONS OF JANUSGRAPH
            Be the first to leave a con

            related JanusGraph posts

            Neptune logo

            Neptune

            10
            28
            2
            The most lightweight experiment tracking tool for machine learning
            10
            28
            + 1
            2
            PROS OF NEPTUNE
            • 1
              Aws managed services
            • 1
              Supports both gremlin and openCypher query languages
            CONS OF NEPTUNE
            • 1
              Doesn't have much support for openCypher clients
            • 1
              Doesn't have proper clients for different lanuages
            • 1
              Doesn't have much community support

            related Neptune posts