GraphAware Blog

Find out what's new in the Neo4j world

GRANDstack tips and tricks

GRANDstack tips and tricks

18 Nov 2019 by Michal Trnka · 11 min read Neo4j Advanced GraphQL

GRANDstack tips and tricksUsing GRANDstack can rapidly accelerate the development of applications. The neo4j-graphql-js library provides the ability to translate GraphQL queries from the frontend to Cypher queries. This is achieved by defining the GraphQL schema and annotating it with a few extra directives. If you want to get familiar with the GRANDstack you can visit their documentation.This post will present some more advanced tips and tricks for using the neo4j-graphql-js library that we found useful for real world applications. It will focus on overcoming some of its limitations or adding missing features. It will show you how to unset...

GraphAware Announces Partnership with Softlink Information Systems

11 Oct 2019 by Michal Bachman · 2 min read

BANGALORE, October 10, 2019 – Softlink Information Systems and GraphAware are pleased to announce that they have entered into a global strategic partnership, combining Softlink’s industry leading database consulting services with GraphAware, the leading Neo4j ISV and consulting practice, and the creators of Hume, a cutting-edge Graph-Powered Insights Engine.With knowledge graphs playing an increasingly critical role for enterprises to move to the next level of information analytics, companies recognize that they need to accelerate the development of knowledge graphs to ensure they remain on the competitive vanguard. The Softlink-GraphAware partnership brings together deep skills in business and technology strategy, driven...

Custom analyzer for fulltext search in Neo4j

06 Sep 2019 by František Hartman · 4 min read Neo4j Cypher Search

We have already blogged about fulltext search available in Neo4j 3.5. The list of available analyzers covers many languages and fits various use cases. However once you expose the search to real users they will start pointing out edge cases and complain about the search not being google-like.Speakers of languages using accents in their written form quite often leave out the accents. This has various reasons, the most common ones are historical, when different character encodings caused problems and users find it hard to change their habits using a different default keyboard layout (e.g. en_US); switching the layout just for...

Scale up your D3 graph visualisation – WebGL & Canvas with PIXI.js

Scale up your D3 graph visualisation – WebGL & Canvas with PIXI.js

05 Sep 2019 by Jan Zak · 3 min read Graph Visualization Intermediate

Do you use D3 for data visualisation and either you are considering, or already using it also for graph visualisation? Keep in mind that D3 uses SVG for rendering. While it is the easiest to work with API for drawing 2D graphics on the Web, its downside is that the browser keeps the entire DOM tree of vector elements in memory, even for elements that are effectively invisible. You might hit a performance drop with complex graphics, specifically for graph visualisation when you try drawing graphs larger than ~1000 nodes, or even less with complex SVG effects.At this time you...

Cypher: Using Index Hints

19 Aug 2019 by Luanne Misquitta · 4 min read Neo4j Cypher Intermediate

The Cypher query planner is quite advanced and mature, and you can mostly rely on it to pick the best plan for your query. However, there are rare cases, or bugs, that might want you looking for ways to influence that plan. This article demonstrates practical usage of an index hint. Note that all queries were tested against Neo4j Enterprise 3.5.8The graph modelThis is the relevant portion of the graph model that is sufficient to demonstrate the issue.Simple enough- we have many tweets, and tweets have keywords.Our graph has two indexes, one on the value of the Keyword, and the...

Build your first Neo4j Desktop Graph App in vanilla Javascript

Build your first Neo4j Desktop Graph App in vanilla Javascript

25 Jul 2019 by Aldrin Misquitta · 6 min read Neo4j Web Apps Beginner Graph Apps

Neo4j Desktop, part of the Neo4j Graph Platform, is a client application that installs on your desktop OS. It lets you get started quickly by downloading and installing the enterprise edition, and supported plugins. You can group related graphs and applications under a Project. You can also build single-page web applications that run within Neo4j Desktop and have access to these services provided by Neo4j Desktop. There are a number of apps available at this blog post, we will build a very simple graph app using vanilla javascript.All code in this blog post is available at and,...

GraphAware Announces Hume Platform R&D Center

23 Jul 2019 by Kyle McNamara · 1 min read GraphAware Hume

BOSTON, July 23, 2019 /PRNewswire/ – GraphAware, a leading Neo4j ISV and consulting practice, today announced the official launch of its Italian Research and Development entity Graph Aware S.r.l., headquartered in Lecce, Italy.This strategic investment by GraphAware represents a significant expansion as an ISV, with a fast growing development team of thought-leaders in GraphDBs with Neo4j, Natural Language Processing (NLP), Machine Learning (ML) and Artificial Intelligence (AI).Led by Chief Scientist Alessandro Negro and CTO Christophe Willemsen,the Lecce R&D center is the main lab and development center for GraphAware’s flagship software platform Hume- with a dedicated local and remote development team...

Graphs as Lateral Thinking for ITOps

Graphs as Lateral Thinking for ITOps

16 Jul 2019 by Isaac Rosado · 6 min read Neo4j Knowledge Graph ETL DevOps ITSM ITOps ITIL

“Lateral thinking” was a big topic back in 2004 when I was in the Network Operations Center (NOC) business; one definition is: “(lateral thinking) is the solving of problems by an indirect and creative approach, typically through viewing the issue in a new and unusual light.”If it works, don’t touch itBut the world of NOC operations, and generally IT Operations was anything but creative, not because we didn’t appreciate innovation per se, but because we valued reliability, consistency an uptime above all things, and those outcomes are the result of a long tradition in IT of approaching change, the natural...

Monitoring Neo4j and Procedures with Prometheus and Grafana - Part 2

Monitoring Neo4j and Procedures with Prometheus and Grafana - Part 2

14 Jun 2019 by Miro Marchi · 20 min read Neo4j Monitoring Causal Cluster

This is the second of a two post series on monitoring the Neo4j graph database with popular enterprise solutions such as Prometheus and Grafana. Monitoring the status and performance of connected data processes is a crucial aspect of deploying graph based applications. In Part 1 we have seen how to expose the graph database internals and custom metrics to Prometheus, where they are stored as multi-dimensional time series.It is now time to query those metrics and render results in a beautiful, integrated Grafana dashboard. This will help you establish 24/7 monitoring and alerting of your Neo4j setup so that you...