Neo4j is a NoSQL database developed by Neo Technology, Inc. It is called an ACID-compliant transactional database with native graph storage and processing.Neo4j is implemented in Java language and it can be accessed by other language using Cypher Query Language (CQL) through a transactional HTTP endpoint. It is used to create and retrieve relations between data without using complex queries like Joins.
Cypher uses ASCII-Art to represent patterns. Nodes are represented by parentheses, which look like circles. Relationships are represented by arrows. Information about a relationship can be inserted between square brackets.
Neo4j stores and presents data in the form of a graph. Data is represented by nodes and relationships between those nodes.Neo4j is suitable for storing data that has many interconnecting relationships.Neo4j is extremely suited for social networking applications like Facebook, Twitter, etc.
Neo4j stores and displays data in the form of the graph. In Neo4j, data is represented by nodes and relationships between those nodes.Neo4j doesn't use tables, rows, or columns to store or present data.Neo4j is best for storing data that has many interconnecting relationships.Neo4j is better at dealing with relational data than relational databases.
In Neo4j, no need to set up primary key/foreign key constraints to predetermine which fields can have a relationship, and to which data. The graph model doesn't usually require a predefined schema. So there is no need to create the database structure before you load the data.
Give below are some of the features of Neo4j
Neo4j supports full ACID properties
Neo4j provides replication for data safety and reliability.
Neo4j follows Property Graph Data Model.
Neo4j also provides a built-in Neo4j browser web application which can be used to create and retrieve your graph data.
Neo4j facilitates you to scale the database by increasing the number of reads/writes, and the volume without affecting the data integrity and the speed of query processing.
Neo4j follows a data model called the graph model. The graph contains nodes and the nodes are connected to each other.
Neo4j is highly scalable. It provides a simple, powerful and flexible data model which can be changed according to applications and uses. It provides Higher vertical scaling, Improved operational characteristics at scale, Higher concurrency,Simplified tuning.
Neo4j provides high availability for large enterprise real-time applications with transactional guarantees. It doesn't require complex Joins to retrieve connected/related data as it is very easy to retrieve its adjacent node or relationship details without Joins or Indexes because it is a graph database and all nodes are already connected.