Chapter 9. Other Tools Related to Neo4j

No database is complete without some tooling around it. Developers and database administrators alike need additional tools—besides the database proper—to make the database fit into a more holistic solution. Neo4j as a Graph Database Management System is no different in that respect. In this chapter, we would like to point out some important tools that are related to Neo4j and can be important in specific user environments. More specifically, we will look at:

  • Data integration tools
  • Business Intelligence tools
  • Modeling tools

No doubt there are other tools that could be of use, but this should get you started.

Data integration tools

Very often, users will want to use the Neo4j Graph Database as part of a solution that uses a polyglot persistence strategy. This is a term that was first coined by Scott Leberknight, but later used and explained many times by well-known authors such as Martin Fowler. Essentially, what we are talking about here is the fact that most complex applications these days feature a number of different data patterns that are used under very different workloads and that can therefore benefit from very different implementation strategies.

Here's what a potential polyglot persistence architecture could look like for a hypothetical, or speculative, retailer:

Data integration tools

An example of polyglot persistence

In the Speculative Retailer's Web Application featured in the preceding figure, there may be different use cases that rely on different data patterns, and that would be best implemented in different data stores.

The consequence of a strategy like polyglot persistence is, of course, that you introduce the immediate and significant need for data integration. Different Data Integration strategies are of course conceivable, but at least one of these will rely on third-party tooling to read from and write to the Neo4j Graph Database Management System. Therefore, we would like to introduce two examples of tools like these and discuss their characteristics and potential use cases.

Talend

Talend (www.talend.com) is an open source software vendor that provides Data Integration, data management, enterprise application integration, and Big Data software and services. They have a very extensible, visual, and powerful development environment for all kinds of integration services that can all be connected together in a workflow designer-style environment.

Talend

Talend Studio for Big Data with Neo4j connectivity

The Talend toolset is definitely very interesting for Neo4j users to take a look at. The original connector for Neo4j was developed by Zenika, a French system integrator, but was afterwards integrated in the core toolset of Talend Open Studio for Big Data, the Talend Enterprise Big Data, and Talend Platform for Big Data products. At the time of writing, the connector has been lagging behind Neo4j releases a little bit, but has been sufficiently powerful in usability and technical proficiency that it deserves a recommendation in this section of our book.

MuleSoft

MuleSoft (www.mulesoft.com), headquartered in San Francisco, California, provides an integration platform to connect any application, datasource, or API, whether in the cloud or on-premises. Just like Talend, it offers a visual environment to integrate other datasources in the polyglot persistence architecture with the Neo4j graph database management system. To do so, MuleSoft provides a well-documented connector for Neo4j that allows you to integrate very easily.

MuleSoft

The MuleSoft Neo4j connector

The MuleSoft connector offers a connectivity metaphor that is a bit similar to what LOAD CSV and the Neo4j shell tools provide, in that they allow you to use variables (read from incoming data streams that can come from different alternative data sources) to include in Cypher statements. It is very easy to understand and use if you are already a bit familiar with Cypher, which is probably the case by now.

MuleSoft

Sending a Cypher query to Neo4j via MuleSoft

The MuleSoft toolset also seems to be well documented and well maintained, providing developers with a stable platform for their integration applications.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.191.186.219