Today, the most common type of database are relational databases, which actually consist of a set of data in which the data itself is connected with relations, and SQL (Structured Query Language) is used to query this data. For relational data, the data is shown in interconnected tables. On the other hand, there are NoSQL databases, which include other ways of managing data that are not related to tabular relationships as in relational databases. NoSQL databases are generally good when using large amounts of unstructured data.
One subset of NoSQL databases are graph databases. Graph databases are, as the name suggests, based on graphs. A graph contains nodes and relationships between these nodes, and the nodes and relationships themselves may have additional attributes (properties) that describe them in more detail. What sets graph databases apart from other forms of databases is their efficiency in processing highly related data and easy execution of queries. Graph databases are based on the relationships of neighboring nodes and thus facilitate the collection and aggregation of information over millions of nodes and connections.
Neo4j is used in a variety of business domains, from the finance world, where graph databases are used to control risk and safety recommendations, over natural sciences and pharmaceutical companies, all the way to telecommunications and network management. Some common examples of using the Neo4j graph database are real-time product recommendations, managing key business data and gaining insight into user interests and patterns of behavior, fraud detection and analysis, data science and artificial intelligence processes, semantic search and knowledge graph creation, identity and access management and many others.