Professional Documents
Culture Documents
Neo4j is a one of the popular Graph Databases. Neo4j is written in Java Language. It is an
open source, Schema-free, No SQL , Graph Database.
2. Continuous availability
A fundamental requirement for most enterprise-grade systems is high availability. That is,
even in the presence of failures, the system continues to deliver its functionality to end users
(humans or other computer systems).
3. Disaster recovery
Disaster recovery is the ability to recover from major service outages, greater than can be
accommodated by the redundant capacity in a continuously available cluster. Typically these are
manifested as data center outages, physical network severance, or even denial of service attacks that
render large amounts of infrastructure inoperable.
Neo4j Features
1) It contains a UI to execute CQL Commands : Neo4j Data Browser
2) It supports full ACID(Atomicity, Consistency, Isolation and Durability) rules
3) It uses Native graph storage with Native GPE(Graph Processing Engine)
4) It supports exporting of query data to JSON and XLS format
5) It provides REST API to be accessed by any Programming Language like Java, Spring,Scala
etc.
6) It provides Java Script to be accessed by any UI MVC Framework like Node JS.
7) It supports two kinds of Java API: Cypher API and Native Java API to develop Java
applications.
Neo4j Advantages
1) Neo4j CQL query language commands are in humane readable format and very easy to
learn.
2) It uses simple and powerful data model.
3) It does NOT require complex Joins to retrieve connected/related data as it is very easy to
retrieve it's adjacent node or relationship details without Joins or Indexes.
Neo4j Drawbacks or Limitations
1) It has a limitation of supporting number of Nodes, Relationships and Properties.
2) It does not support Sharding.
CQL Stands for Cypher Query Language. Like Oracle Database has query language SQL, Neo4j
has CQL as query language.
Neo4j CQL -
1) It is a query language for Neo4j Graph Database.
2) It is a declarative pattern-matching language
3) It follows SQL like syntax.
4) It is syntax is very simple and human readable format.
Like Oracle SQL -
1) Neo4j CQL has commands to perform Database operations.
2) Neo4j CQL supports many clauses like WHERE, ORDER BY etc., to write very complex
queries in very easy manner.
3) Neo4j CQL supports some functions like String, Aggregation.In addition to them, it also
supports some Relationship Functions.