2 Reviews and Ratings
34 Reviews and Ratings
For running application tests it's well suited. H2 [Database Engine] can replace the real-world database solution for them easily and removes the requirement to set up a a separate database instance just for running unit tests. For using in actual production application one needs to consider scale. H2 is suitable if application runs in single instance and database is located in same machine as a file where that application runs. This means the application shouldn't have a large user base. However it's easy to switch to an actual MySQL instance if the need arises, it's most likely only a configuration change and doesn't require new code.Incentivized
Neo4J is great for creating network graphs or illustrating how things are related. It is also good for finding individuals or things that have greater influence than others in a system. It is not appropriate if you have standard data sets that can be analyzed using conventional methods or visualized using Tableau, for example.Incentivized
Can run as an in-memory database.Simple and quick to get started with, and is light weight (only 2MB).SQL compliant so it compatible with most relational databases.Incentivized
Mature Query language, I found Cypher QL to be mature in handling all sorts of problems we throw at it. Its expressive enough to be intuitive while providing rich features for various scenarios.Native support for REST API, that makes interacting with Neo4J intuitive and easy.Support for Procedures in Java, procedures are custom code that could be added to the Neo4J to write custom querying of data. The best part about the procedures is it could be invoked using the REST API. This allows us to overcome any shortcomings from their Cypher query language.Nice UI and interface for executing the Query and visualizing the response.UI access controlled by User credentials allows for neat access controls.Awesome free community edition for small-scale projects.Incentivized
There's a warning in official FAQ "Is it Reliable?"-section which makes it seem like H2 is not yet a mature product.If raw SQL queries are used there maybe be differences between MySQL & H2. ORM library should be used.Support seems to be community-based only.Incentivized
One of the hardest challenges that Neo4j had to solve was the horizontal scaling problem. I am not updated on recent developments, but at the time of my use, I couldn't find a viable solution.Neo4j does not play with other open source APIs like Blueprint. You have to use the native Neo4j API.There wasn't a visual tool to see your data. Of course, third party tools are always available, but I would have loved something which came with the Neo4j bundle. I love that Docker comes bundled with Kitematic, so it's not wrong to hope that Neo4j could also ship with some default visualization software.Incentivized
[Based on] Query Language, Performance on small and large data sets, integration and deployment, analysis, API support, Interactive UI.Incentivized
While both can run as an in-memory database, H2 Database Engine was just so much easier for us to use since we primarily use the Java stack and H2 Database Engine is also built with Java.Incentivized
Neo4j is a graph store and has different use cases compared to another NoSQL Document store like MongoDB. MongoDB is a bad choice when joins are common as existing operators for joining two documents (similar to tables in a relational store) as Mongo 3.5 use SQL like join algorithms which are expensive. MongoDB is a great choice when distributed schemaless rich document structures are important requirements. Cross document transaction support is not native to MongoDB yet, whereas Neo4J is ACID complaint with all its operations.Incentivized
Doesn't take time from developers, once it's configs are set up for testing it works in everyone's development environmentsEasy to integrate in application, no need to setup separate database software, no maintenanceNo need to deal with infrastructure related issues/costs - database runs in same machine as the application that uses it.Incentivized
Positive: Less complex queries on graph structures, than in relational databases.Negative: maintenance is a huge deal, things doesn't work and break, requiring lengthy restore operations.