GraphAware Blog

Find out what's new in the Neo4j world

Practical Applications of Neo4j 4.0

16 May 2020 by Michal Bachman, Miro Marchi Neo4j

Practical Applications of Neo4j 4.0

GraphTour Europe 2020 started in Amsterdam on February 4, right after the release of Neo4j 4.0, a key milestone in the graph technology landscape. At GraphAware we are very excited about the new features included in this release because they revolutionize the way we approach some common graph challenges. Our CEO, Michal Bachman spoke about this in Amsterdam in his talk “Practical Applications of Neo4j 4.0”, and he and other GraphAware experts continue to present in each of the six cities where we sponsor GraphTour. Find out what’s the next virtual event and register for free.GraphAware and Neo4jAt GraphAware we...

Install the Graph Data Science library in Neo4j 4

26 Apr 2020 by Christophe Willemsen Neo4j

Neo4j has implemented very useful algorithms in order to derive insights from your graph data.The Louvain algorithm for community detection or PageRank for centrality for finding important nodes in your graph are just some examples of them.A couple of days ago, the GDS 1.2 preview was out and is now compatible with Neo4j 4.x, here are the installation instructions :Download the GDS 1.2 library from the Neo4j Download CentreUnzip the downloaded the file and copy the .jar file into the plugins directory of your Neo4j server.Amend the neo4j.conf file in order to allow the gds.* procedures (assuming you have the...

Hume in Space: Monitoring Satellite Technology Markets with a ML-powered Knowledge Graph

15 Apr 2020 by Vlasta Kůs NLP Knowledge Graph NER ERE Hume

Hume in Space: Monitoring Satellite Technology Markets with a ML-powered Knowledge Graph

Everyone has a passion for something. Be it music, politics, sports, coffee or … pancakes. Such passion makes you strive for new information, for understanding of the current trends. Take pancakes: you might watch for new recipes on your favourite website, you might look at cooking shows or youtube videos to get more inspiration about how to serve them … but overall, you can probably handle this pretty well. It’s not like there is much room for revolutionising the pancake recipe.Imagine a different context: let’s say that your passion is not limited to your kitchen, but reaches from the ground...

Contact Tracing Using GraphAware Hume (COVID-19)

01 Apr 2020 by Michal Bachman Neo4j GraphAware Hume Coronavirus

Contact Tracing Using GraphAware Hume (COVID-19)

GraphAware Hume helps governments in keeping their countries safe. In this 15-minute video, we demonstrate the use of Hume for contact tracing and smart quarantine in the context of the current coronavirus pandemic. Specifically, we will see how Hume can identify people at risk using actual and potential contact tracing, suggest who should be informed or quarantined, visually explain why someone is at risk, find quarantine offenders, and much more.Hume can do much more than structured data analysis. It is a full blown ecosystem for intelligent systems built upon the combined power of collaborative knowledge graphs and machine learning.Hume’s unique...

GraphAware's Virtual Booth at GraphTour EMEA 2020

14 Mar 2020 by Luanne Misquitta Neo4j GraphAware

GraphAware's Virtual Booth at GraphTour EMEA 2020

You’ve probably seen us already at Amsterdam, Stockholm, Madrid and London.Now, as GraphTour goes digital due to developments around the world with coronavirus (COVID-19), GraphAware stands with Neo4j and we are moving our sponsor booth online for the first time!GraphAware DistributedThe GraphAware team has been distributed globally since year one of its inception and we have always been comfortable working and serving customers remotely. We continue to be spread around the world and take pride in the fact that our colleagues are so diverse.We communicate through many (many, many) channels on Slack, not just about work, but life in general-...

Dockerize your JavaScript web applications efficiently

12 Mar 2020 by Christophe Willemsen JavaScript

Dockerize your JavaScript web applications efficiently

So, you’ve built an amazing application with your favorite framework such as Vue.js or React.js and now it’s time to build a Docker image and ship it.This blog post will iterate over the steps needed to prepare a production Docker image of your application, with some details and solutions to problems you might encounter on the way.The DockerfileThe first step is to create a Dockerfile serving as a definition of how the docker image is built.In this first version, we extend the node:lts-alpine image; this ensures Node.js is available :FROM node:lts-alpine# install simple http server for serving static contentRUN npm...

Neo4j 4: Drivers and Authorization

28 Feb 2020 by Michal Trnka, Luanne Misquitta Neo4j

Neo4j 4: Drivers and Authorization

Neo4j 4.0 has just been released with a key feature: graph and sub-graph access control. Access to certain labels or relationship types or properties can now be handled at the database level, resulting in developers not having to deal with complex security logic in their code, and also providing a more consistent and performant solution.Users connecting directly to Neo4j with their Neo4j user credentials either via the browser, or standalone visualisation tools will only have access to the sub-graph as permitted by the role(s) assigned to them.But what about applications that usually abstract away the database user credentials and connect...

Graph Technology Landscape 2020

17 Feb 2020 by Janos Szendi-Varga Neo4j GraphAware

Graph Technology Landscape 2020

It’s been a year since I published the Graph Technology Landscape 2019 post on GraphAware’s blog. I consider this a success story because it got a lot of attention and publicity. The landscape was mentioned many times at different places; it was used by Emil Eifrem in his GraphTour and GraphConnect opening keynotes, it was displayed in conference halls, and I received many, many useful comments and feedback. I was even invited to Rik van Bruggen Graphistania Podcast to talk about it, and the episode was referred to in the Top 5 Neo4j Podcasts of 2019 blog posts as well....

Neo4j 4: Multi tenancy

06 Feb 2020 by Luanne Misquitta Neo4j Cypher

Neo4j 4: Multi tenancy

Up until version 4.0, Neo4j has supported only one active database per server instance. As such, achieving multi tenancy meant that either a Neo4j instance had to be deployed per tenant, or all tenant graphs co-existed in the same database.The first option meant a lot of extra infrastructure and maintenance, and the second implied some custom partitioning strategy usually achieved by differentiating tenants by labels or properties- a mechanism fraught with risk and mostly never preferred.Neo4j 4 allows you to use more than one active database at the same time, where each database defines a transaction domain and execution context,...

Neo4j 4: Post-Union Processing Explained

17 Jan 2020 by Luanne Misquitta Neo4j Cypher

Neo4j 4: Post-Union Processing Explained

Many, many years ago, I requested for the Cypher UNION clause in Cypher and Andres Taylor graciously added it.This was followed by the request for Post-Union Processing by Aseem Kishore, and it began to collect a whopping 99 comments over the course of time.It is exciting to see support for a subset of subqueries in openCypher i.e. uncorrelated subqueries in the soon to be released Neo4j 4, bringing post-union processing finally to Cypher.Given its history, a short article is in order.Union in 3.xIn pre-4x versions of Neo4j, UNION served to combine the results of 2 or more queries into one...