Neo4j


As the Neo4j partners we can help with the licence purchase or in the access to the data base. Additionally, we can perform the following:

  • Installation of the base
  • Feed the base from external sources
  • Making the interface for the online base feeding and creating the relations
  • Implementation of the rules, representing specific features, labels, connections and nodes; creating the reports in the Neo4J environment; serving as a dedicated reporting application
  • Building the dedicated front-end and back-end apps, based on the graph database
  • Building other analytics-reporting environments, based on Neo4J database features
  • Servicing our products made especially for you, as well as servicing the database itself

Graph database main features

Graph database is made along a different concept in comparison to relation database. They accumulate the information in the nodes (which corresponds to single records in RDBMS) and by means of relations (which corresponds to the connections between tables in RDBMS). Each node and relation may have the common attributes (which corresponds to the columns in RDBMS), but the list of attributes may differ even between the nodes and relations of the same kind.

The features of graph database, crucial for its users are as follows:

  • Performance

With the inquiries involving numerous tables,m the construction of the graph database allows for reaching the performance degree significantly higher than in the RDBMS case. It happens in spite of the lack of the dedicated indexes.

  • Quick development

No pre-defined data model; the actual model is being made with the in-flow of the new data. Intuitive „reading” the data in the model, both by the IT specialists and by business partners.

  • Business responsivity

No pre-defined scheme results in quick reacting to the needs for changes in the applications (CR). Data in the graph database can be shaped according to needs and requirements.

  • From laptop to clusters

Graph database is characterised by the high level of accessibility,  transactionality and scaling. Billions of nodes and relations can be kept inside of them. They can be used on laptop or any workstation, and also in the corporations, as the mass data stores.

  • It can be used by IT and business

Thanks to the in-built devices, data extraction and analysis can be performed even by persons not familiar with the IT knowledge.


Based on the information about the real beneficiaries in the companies and about the relations between companies we can create a network of the mutual connections in the shape of a graph. We can search the relations between different persons and/or companies, defining conditions (with conditions being e.g. specific name or surname, name of a company or a number of relations stemming out of a node) and the number of relations understood by the distance between objects (e.g. we look for the shortest path between a user named Jan Kowalski and the Alfa company, with maximum distance of 5 relations). In the end, we can create a graph with millions of nodes and relations (Neo4J is able to serve many billions of nodes in one base) and analyse it.

We can introduce to our graphs persons or relations which do not result directly from the official registers. Such relations are those of kinship, neighbourhood, close cooperation of separate business entities, supply chains etc. We can make use of those relations or leave them out. Making up new or additional relations may be performed by defining the rules for data in the base and their implementation. These data may come from institution’s own resources or from the outside.

The Neo4j base has over 500 functions implemented. Apart from that, in the APOC library we have the access to more than 600 additional functions.

Thanks to the structure of the graph database and the already implemented inner mechanisms (Neo4j Graph Data Science Library) we can:

  • Identify separate groups, which use the same identifiers (e.g. phone numbers) (Louvain Modularity algorithm),
  • Identify groups that are often in touch with each other (e.g. social compensation beneficiaries) (Components (Union Find) algorithm),
  • Examine similarities of bank accounts or similarities in the chains of relations (Jaccard algorithm),
  • Examine the influence upon others and the amount of transactions (PageRank algorithm),
  • Find additional relations and add them to the existing data (e.g. neighbourhood, using the same IP addresses etc.) (Common Neighbors algorithm),
  • Find transactions or connections of very short path (Shortest Path algorithm).