Neo4j is an open source embeddable graph database developed by Neo Technologies based in San Mateo, California with an office in Sweden.
$65
per month
Oracle Database
Score 8.2 out of 10
N/A
Oracle Database, currently in edition 23ai, is a converged, multimodel database management system. It is designed to simplify development for AI, microservices, graph, document, spatial, and relational applications.
Oracle completed solution and support is of cause better than open source solutions, we also choose other NoSQL database and Graph database, to address some very particular business use cases
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.
We migrated from NoSQL to an Oracle database. One of the reasons was robust backup and recovery options available in the Oracle database, which provide zero data loss. A transactional database like Oracle is a better fit for our use case than NoSQL. On a large scale, deployment was evaluated as a cheaper option than the NoSQL engine. This conclusion came even after considering Oracle license is expensive.
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.
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.
There is a lot of sunk cost in a product like Oracle 12c. It is doing a great job, it would not provide us much benefit to switch to another product even if it did the same thing due to the work involved in making such a switch. It would not be cost effective.
Learning cypher was super easy coming from a SQL background. Furthermore, the docs Neo4j provides on their website make it really easy to pull up a reference, guide or a quick example. The mac app they provide is also really well designed with good visualisation tools, with the ability to easily use colour, line thickness etc to help navigate your data.
Many of the powerful options can be auto-configured but there are still many things to take into account at the moment of installing and configuring an Oracle Database, compared with SQL Server or other databases. At the same time, that extra complexity allows for detailed configuration and guarantees performance, scalability, availability and security.
1. I have very good experience with Oracle Database support team. Oracle support team has pool of talented Oracle Analyst resources in different regions. To name a few regions - EMEA, Asia, USA(EST, MST, PST), Australia. Their support staffs are very supportive, well trained, and customer focused. Whenever I open Oracle Sev1 SR(service request), I always get prompt update on my case timely. 2. Oracle has zoom call and chat session option linked to Oracle SR. Whenever you are in Oracle portal - you can chat with the Oracle Analyst who is working on your case. You can request for Oracle zoom call thru which you can share the your problem server screen in no time. This is very nice as it saves lot of time and energy in case you have to follow up with oracle support for your case. 3.Oracle has excellent knowledge base in which all the customer databases critical problems and their solutions are well documented. It is very easy to follow without consulting to support team at first.
Overall the implementation went very well and after that everything came out as expected - in terms of performance and scalability. People should always install and upgrade a stable version for production with the latest patch set updates, test properly as much as possible, and should have a backup plan if anything unexpected happens
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.
Because of a rich user base and support for any critical issue, this is one of the best options to choose. In case the project has a TCO issue, it can compromise and choose Postgres as the best alternative. SQL server is also good and easy to code and maintain but performance is not as good as the Oracle