Neo4j Interview Questions

Neo4J Interview Questions

A list of top frequently asked Neo4J interview questions and answers are given below.

1) Explain Neo4j.

Neo4J is a NoSQL, schema-free, open-source, popular graph database. It is the world's leading open-source graph database.


2) Why Neo4J is called graph database?

Neo4J is called graph database because it stores data structure in graph instead of in tables.


3) In which language Neo4G is written?

Neo4J is written and implemented in Java language.


4) Which query language is used by Neo4J?

Cypher Query Language (CQL) is used by Neo4J.


5) Which was the Neo4J first version and when was it released?

The first version of Neo4J was Neo4j 1.0 and it was released in Feb, 2010.


6) Why is Neo4J used?

Neo4J is mainly used for:

  • Real time data analysis
  • Knowledge graph
  • Network and IT operations
  • Real-time recommendation engines
  • Data management
  • Identity and Access management
  • Social Network
  • Privacy and Risk management

7) Explain the differences b/w RDBMS and Graph Database?

RDBMS and Graph Database both use different approaches to store and retrieve data. The following table specifies the differences between them:

RDBMSGraph Database
TablesGraphs
RowsNodes
Columns and DataProperties and its Values
ConstraintsRelationships
JoinsTraversal

8) What is the role of building blocks like Nodes, Relationships, Properties and Labels in Neo4J?

Roles of building blocks:

  • Nodes: They are entities equivalent to rows in table.
  • Relationship: It connects entities and structure domain.
  • Properties: It contains meta-data and attributes.
  • Labels: It groups nodes by role.

9) Which are the several popular Graph Databases?

Neo4J is a very popular Graph Database. Other Graph Databases are Oracle NoSQL Database, OrientDB, HypherGraphDB, GraphBase, InfiniteGraph, AllegroGraph etc.


10) Explain some features of Neo4J.

Neo4J supports UNIQUE constraints.

  • Neo4J uses Native graph storage with Native GPE(Graph Processing Engine).
  • Neo4J supports exporting of query data to JSON and XLS format.
  • Neo4J provides REST API to be accessed by any Programming Language like Java, Spring, Scala etc.
  • Neo4J provides Java Script to be accessed by any UI MVC Framework like Node JS.
  • Neo4J supports two kinds of Java API: Cypher API and Native Java API to develop Java applications.
For more information:

11) How files are stored in Neo4J?

Neo4J stores graph data in a number of different store files, and each store file contains the data for a specific part of the graph for example relationships, nodes, properties etc.


12) Whjat is the difference between Neo4J Graph Database and MySQL?

Difference between Neo4J and MySQL:

Neo4JMySQL
Neo4J contains vertices and edges. Each vertex or node represent a key value or attribute.In MySQL, attributes are appended in plain table format.
In Neo4J, it is possible to store dynamic content like images, videos, audio etc.In relational databases, such as MySQL, it is difficult to store videos, audios and images.
It provides the capability of deep search into the database without affecting the performance along with efficient timing.It takes longer time for database search and also inconvenient compared to Neo4J.
In Neo4j, two or more objects can be related by making relationship between them.It lacks relationship and very difficult to use them for connected graphs and data.

13) What is CQL? How to execute CQL commands in Neo4J?

CQL stands for Cypher Query Language. The "$" prompt is used to execute all CQL commands in Neo4j.


14) What is object Cache in Neo4J?

In Neo4J, object cache is used to store individual nodes, their relationships and their properties in a form which is optimized for fast traversal of the graph. Reading from object cache is 5 to 10 times faster than reading from the file buffer cache.


15) Which query language is used by Neo4J?

Cypher Query Language (CQL) is used by Neo4J.


16) How can you delete databases in Neo4J?

Delete commands in Neo4J:

Delete a single node:

Delete all nodes and relationships:

Delete a node with its relationship:

Delete relationships only:


17) Is it possible to query Neo4j over the internet?

As such Neo4j got RESTful API, you can query over the web, or you can run it locally. It runs in the Heroku or Cloud.


18) What are the different Neo4J CQL command?

Following the different Neo4J CQL commands:

  • Create
  • Match
  • Delete
  • Merge
  • Set
  • Remove
  • Return etc.

19) What is MATCH command? Where is it used in Neo4J?

MATCH command is used with RETURN or UPDATE clause. It cannot be used alone otherwise it will give error.

Syntax:

The MATCH command cannot be used alone to fetch data from the database otherwise it will show invalid syntax error.


20) What is the use of SET clause in Neo4J?

SET clause is used to add new properties to an existing node or relationship.


21) Is it easy to fragment a Neo4J graph across multiple servers?

It is very difficult to fragment a Neo4J graph across multiple servers.