Bloom-ing marvellous!

Neo4j Bloom 1.3 is now available. With an array of new features, it’s also available for free in Neo4j Desktop!

Ljubica Lazarevic
May 19, 2020 · 6 min read
Finn-E on unsplash

Bloom 1.3 is out! In this post, we are going to check out some of the new features, as well as having a run-through of the cool Bloom things!

Try Bloom on sandbox
Try Bloom on sandbox

Neo4j Bloom — now available for everybody!

This is the headline feature: Prior to 1.3, Bloom was available only via subscription.

This has now changed, and everybody now has access to Bloom via Neo4j Desktop. With this new version of Bloom, you will be able to explore data on a local Neo4j instance, as well as customising your perspective for your needs.

Launching Bloom from Neo4j Desktop

You can get started right away. Check that you have the latest version of Neo4j Desktop, and you will be able to launch Bloom on a local database.

Not quite ready to download Neo4j Desktop? No problem at all — come explore Bloom on our Neo4j Sandbox - no download necessary. If you require something more permanent (sandboxes only last for days), you can also use Bloom on Neo4j Aura in the cloud.

New to Bloom?

Welcome! Here’s a great place to start, as we highlight all of the new, recent features in Bloom below, you will start to get a feel for what you can do with this impressive visualisation tool. We will also outline some great content to get you up to speed.

Here is the Bloom video from Connections:

Bloom Video from Neo4j Connections event for Graph Data Science

You can also check out our developer guide that walks you through the whole Bloom experience.

One of the many developer guides to get you started quickly

Find stuff quickly

Bloom is a graph data visualisation and exploration tool. Rather than using Cypher to interrogate your data, Bloom allows you to use near-natural language to ask questions instead.

When you start up your database, Bloom does a lot of initial investigation to understand the structure of your data and naming conventions used. It goes a step further to try and accommodate friendly versions of naming conventions used.

For example, a CONNECTED_TO relationship type can be referred to as connected to , you can skip relationship types and node labels altogether (this is known as filling the gap), you can even specify property names and values without saying which node they belong to, provided indexes are in place.

The output of a Bloom phrase looking for cities that have hosted more than one Olympic game (truncated data set), described in the tips and tricks video/blog post (Bloom phrase: City Games City)

Although produced on a previous version of Bloom, you can check out some searching tips and tricks from talk of mine, or this associated write-up.

Bloom Tips & Tricks talk from GraphConnect 2018

A new, recent feature in Bloom now also supports case-insensitive searching. Now you can explore your data without worrying about upper and lower case. Do make sure you have indexes on any properties you would like to explore.

Putting it into perspective — maximising how you visualise your data

One of the most powerful aspects of Bloom is being able to set up the display so that your users have something that is intuitive to understand, easy to explore and has low barriers to entry.

You can customise Bloom by setting up the perspective. There are a number of things you can do to customise the perspective to your specific use-case:

  • Colour-code labels and relationships — As well as choosing colours for your node labels, you can now also select colours based on relationship types.
  • Use icons to help visually describe nodes rapidly — Select the most appropriate image for your node categories from an extensive library of icons.
  • Adjust the size and shading of nodes and the thickness of relationship lines — There is now a great flexibility in how nodes and relationships are displayed. You can either set default node size and relationship thickness by label and type, you can also dynamically allocate colour shading and/or size based on property values. This is especially powerful when looking to do visual inspection on data processed with graph algorithms or complex queries. For instance represent the page-rank of a node by size and the community it belongs to by colour.
  • Customise what labels, relationships and properties should be visible — As well as deciding what captions you want shown on nodes, for example, you can also also choose what properties you do not want shown. And, you can also hide node label categories and relationship types altogether!
  • Encapsulate parameterised Cypher queries — Search phrases give you the complete flexibility of writing custom, parameterised Cypher queries, whilst labelling and summoning them with a user-friendly name and pass in parameters into a natural language phrase. You can now specify the parameter type, further enhancing this functionality.
Check out that 70’s wallpaper!

I recently did a live stream session in Twitch on building a Bloom perspective from scratch — you can follow along and build one too! We live stream on a range of topics. Check out the Twitch schedule.

Sharing your findings

You now have a couple of ways you can share your insights and findings from your Bloom exploration.

Export as CSV — You can now export internal node IDs and relationship types for data displayed on the scene. This can be useful if you want to take a subset of data from your database for further analysis.

Exporting all that biscuity goodness

For example, the CSV for the above will look something like this:

Export as CSV output

Nodes as a Cypher query — Another cool thing you can do is copy selected nodes in the scene (using the handy keyboard shortcut of cmd/ctrl + c), and a Cypher query to find those nodes will be copied to clipboard. For example, if ‘Teatime Chocolate Biscuits’ and ‘Scottish Longbreads’ are selected from the scene above and copied using keyboard shortcuts, the following will be available:

MATCH (a0:Product {reorderLevel: 5, unitsInStock: 25, unitPrice: 9.2, supplierID: "8", productID: "19", quantityPerUnit: "10 boxes x 12 pieces", categoryID: "3", unitsOnOrder: 0, productName: "Teatime Chocolate Biscuits"})
MATCH (a1:Product {reorderLevel: 15, unitsInStock: 6, unitPrice: 12.5, supplierID: "8", productID: "68", quantityPerUnit: "10 boxes x 8 pieces", categoryID: "3", unitsOnOrder: 10, productName: "Scottish Longbreads"})
return a0, a1

Other ways to get Bloom

As mentioned above, the easiest way you can get Bloom, and for free, is through Neo4j Desktop. This version will allow you to explore your local Neo4j instances.

If you would rather not download any software, you can launch a time-limited Bloom sandbox, no installation required!

Bloom is also now directly available on Neo4j Aura. You no longer need to access Aura with Neo4j Desktop to start Bloom. You can find out more about how to access Bloom from Aura here.

Some of the different ways to access Neo4j Bloom

Bloom server edition allows you to run Bloom independently from Desktop, and on remote, as well as local, instances of Neo4j. This is available under a paid license, and you can find out more from your friendly sales rep.

Last but not least, if you are a start-up, you are entitled to a free copy of Bloom server edition. Find out more about our start-up program here.

Where to learn more?

Neo4j Developer Blog

Developer Content around Graph Databases, Neo4j, Cypher…

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store