March 30, 2020
Introduction to Neo4j – June 2019

Introduction to Neo4j – June 2019


– [Jonny] Okay, so good morning everybody, assuming you’re in the
same time zone as me. My name’s Jonny Cheetham, I’m based in Neo4j’s office in London, and I’m just gonna take
you through a short tour through Neo4j, kind of with the assumption that you’re not yet very
familiar with the product. This is one a series of webinars. We do one every week
covering various subjects, and I hope this will intrigue you and that you’ll come back for more. So, let me start by just saying a little bit about Neo4j the company. So, Neo4j has been around
for, what, nearly 15 years, and we are kind of unusual for a venture capital-backed graph database in that the guy that wrote
the first line of code, Emil Eifren, is the CEO today, so what that means is that although we have borrowed money
from venture capitalists we’ve always kept our promises and Emil has been supported by the investors to keep the company going, and that’s actually quite unusual. So, what has he built
and what have we built? So, first of all, Neo4j is a database, so it’s a database in the sense that Oracle or MongoDB are databases. It’s a place to store
data and to process data, but it has some very
special characteristics, and the first word I’d
like to draw your attention to on the slide is the word native, so it is a native graph database, and what that means is that we control everything about it right down to the storage format on persistent disks. So, we are, we’re not sitting on top of somebody else’s data storage. We’ve written the whole stack ourselves. I’ll come to why we did that in a moment, but let’s just talk
about what the thing is. It’s a high performance, it’s an ACID. What ACID means is it’s
transactionally aware, so if you write something
you’re sure it’s written and it’s got the opportunity
of rolling back things if you decided to abort
a right in the middle, so it’s kind of a traditional
database in that sense, but it becomes different
from a traditional database and more like other NoSQL databases in that it’s got a very flexible schema, and that means it’s
incredibly good at modeling real world problems without
the issues of transformation that you see with some other platforms. Now, the next thing to
say is it’s been developed by engineers for use by engineers, so it’s a very friendly, easily managed, easily maintained environment that anybody who’s worked in a devops environment will feel very at home with. The next point is that we talk
about hardware efficiency, so we’ve got an example
customer, which is Adobe, who are running an application which they first implemented on Cassandra, and that application required
130 servers to deliver the functionality to
their user population. They then thought, “This is ridiculous. “We can’t use 130 servers for
something as simple as this. “Let’s see if we can re-engineer it,” and they chose another tool. They chose to re-engineer it in MongoDB and it took 50 servers to do the same job, and they were pleased for a
moment, and then they thought, “Well, this is still
costing us far too much. “Why is it requiring so much hard work?” They re-engineered it in
Neo4j and it’s running today, giving better performance,
on three servers, so I’m not saying you’ll get that level of efficiency from, for every application, but Neo4j is a super efficient
high performance database. We talk about global scale, so we’re represented
everywhere in the world, and we talk about graph adoption, and Neo4j I think, whatever
else you say about it, has been very instrumental in
getting graphs onto the radar. We have a community
edition of the product, which is extremely popular
and very widely used. So, let me just talk a little
about Neo4j the company. So, we’re just under 300 people now. The company is originally
founded in Sweden, and all the engineering
is in Sweden or in London, but the headquarters now is, are in Silicon Valley in San Mateo, and that’s where the sales
leadership are based, but it’s still run by Swedes, so it’s got some Swedish characteristics. As I said, it’s a venture
capital-backed company, so most recently we were in, we had a big investment
from Morgan Stanley, which we think is a significant,
not just as an investment, but an endorsement from one of the markets that we attempt to
address, and if you look you can see that we have been very successful with financial firms, and in the ones that are
using Neo4j very, very often they’re using it for multiple uses, so there’s lots and lots
of Neo4j being used. I’ll also draw your attention, I don’t know who in the audience is from a software vendor
rather than a user, but Neo4j is used in an OEM context, so it’s builtin to lots of other products. So, products from HP, for
example, products from Ericsson, for example, have got
Neo4j builtin to them, and if you look over further you can see some of the users that are talking, that are using Neo4j today, and hopefully you’ll
recognize those names. Right over on the right,
some of the partners, and I’ll just draw your
attention to the fact that we’re available through
Google Cloud platform, Amazon Web Services, Azure,
and other of the standard web platforms that everybody’s using. So, why, why did Neo4j come about? Well, Neo4j came about because somebody had a problem organizing a hierarchy. It was kind of a product hierarchy. They invented it first
on a relational database, and it was terrible performance and very, very difficult to code. They then implemented it as a graph model on top of a relational database, and that was much easier to
code and quite delightful, but still gave terrible performance, and then they thought,
“Well, wait a minute. “This is a problem that everybody’s “seeing all over the place. “Let’s build a tool for the job,” so that’s why they started building Neo4j, and at that time there were a few other significant things happening in the world. So, Google was getting its act together, and other big graph-based applications like Facebook and Twitter were
getting their acts together, so the world was moving towards graph, and it’s really interesting to think of all those huge companies that have changed the landscape so much
who are, which are based essentially on the graph technology that we’re making available to people who don’t want to do as Google did and didn’t want to write
their own database. So, what we’re doing is
saying that the secret sauce that made Google a successful company is something that’s gonna be valuable for lots of applications,
not just for social networks, and we’re making it available
kind of as something you can download and get
using very, very quickly. And that’s driven, really,
by the fact that not only, as everybody knows, is data exploding, but if you look slightly
harder at that data, or look at it in a bit more depth, you’ll realize that it’s
the connections between the data that are really,
really significant, so when we all started
carrying mobile phones around and using tools like WhatsApp, it wasn’t just that there
was another mobile phone for the WhatsApp
developers to worry about, suddenly they had to worry about all the connections that that person had with all the other WhatsApp
users in their various groups, so each individual device
is growing at huge rates and contributing lots of data, but also massive connection issues are, or connection opportunities,
you would say, are being, are emerging because of the way in which technology is enabling communication in every sense. So, I’ll just give you a moment to look at the networks of people,
business processes, so we see a lot of people are using it, for example, for data
lineage type applications, but also for fraud detection
and things like that. We’ll talk about those
in a bit more detail. So, from this slide just take away the idea that there are lots of… The proliferation of data also leads to a proliferation of
connections between data, and Neo4j is a tool that
helps you to deal with that. So, what we’re, so we’re talking about those connections between data, so Neo4j is designed for dealing
with that connected data. So, what this slide that you’re looking at at the moment shows us is that different databases have got different levels of ability to cope with this challenge. So, traditional databases,
or when we talk about traditionally relational database, have got the ability to do
what we call join operations, so you can traverse data
within the database, but realistically you can’t
do that for very many, and if you’re writing a high performance application on a relational database the first thing you
learn is don’t do joins. If you are, if you’re not in such a challenging environment
you may use joins, but you won’t be able to
get very far if you want to, if you want to traverse very many, and if you think about a telco
network or a social network, or many of the other networks out there, three joins is not very many at all. But of course the world’s changed, not just with graph databases,
but lots of other databases, so the data lake family of
technologies, Hadoop-based, but also the document databases
and the Y column databases. They’re all relatively new, but they don’t actually help with this
particular application because the database
itself doesn’t know about the connections that exist
between the elements in it, so all of the refurb
across, between elements has to be done as an application level. The database doesn’t help you at all, which means you get poor performance and also your application
program is very complicated. With a graph database what we look at is something that can cope with literally millions of hops between data elements, and that’s results in some
fantastic user stories, so at the bottom there you’ll
see one of our users at eBay. “Our Neo4j solution is
thousands of times faster,” and the queries require
100 times less code. So, Neo4j is very, very
efficient and fast. It’s also very efficient from
a code creation point of view, so your queries are short,
concise, and easy to maintain. So, what is a graph database? Let’s just talk about the
graph model for a second. It couldn’t be simpler. The graph model consists of nodes, so you can see these, the
person and the car here. They’re nodes, or the two
people in the car are nodes. Nodes connected by relationships, so there’s the marriage,
there’s the drives, there’s the lives with,
these are relationships. And both nodes and relationships can have properties associated with them. Here you can see the property is like the brand of the car, and so on. So, this model is very, very simple. What it’s basically saying is
things connected to things, and if you’re a data
modeler you can’t imagine any problem that cannot be easily modeled with a model that supports
things connected to things. The world itself, the real
world is made of things connected to things, or
things related to things, and our model allows you to do that. So, the difficult
exercises of normalization and trying to map the real
world problem onto tables with rows and columns just disappears, and all the compromises that the designer has to make in dealing with
that, they disappear too. So, we’ve got an extremely
simple data model. It comes with a query language
that reflects the data model. We call our query language Cypher, and that makes it
extremely simple to query and to get very good
results out of the database. So, how’s it working, how are people using it, what’s it doing? So, there are three classes of application I’ll draw your attention to. There’s the data journalism, or what we call graphs for good. What people are doing, so if you’re looking at
Panama Papers, for example, Panama Papers you may remember being a major public news story. In fact, the journalist that worked on it won the Pulitzer Prize, and it resulted from the
theft, in fact, of some data, which I’ll show you in a
bit more detail later on, which resulted in the resignation
of the prime ministers, not just of Pakistan and Iceland, but the investigation of
politicians across the world, who were defrauding their populace, and we’ll talk a bit
about how that happens. So, also on graphs for good,
NASA is a big user of Neo4j, and it’s not us that say
this, it’s NASA that say this, that NASA say the benefits of the data they’ve put into the Neo4j database will put a man on Mars two years sooner than they would otherwise been able to do, and I can talk about how
that has been achieved, but we’ll have to do that offline because we haven’t got
time today to do that. But what NASA have done is
build a very big database of all the things that have ever gone wrong with any of their missions, which is searchable in a way that means that they can anticipate and avoid problems in future planned missions. And finally, Neo4j is very
heavily used in life sciences, in biology, molecular
biology, and genetic biology, for modeling genes and phenotypes, and for working out the
effect of different drugs and different molecules
on different diseases that affect different types of people, so it’s really at the height of personalized medicine
and of drug discovery, and there are a large
number of people doing, using it for that, and
I’ll talk a bit about a diabetes project that is
using the same type of approach. Okay, moving on, so there are three big value propositions for Neo4j. The first is real-time transactions. So, Neo4j, as I’ve said,
is an ACID database, it’s a high performance database that’s often used behind
complex applications which have got thousands
or millions of end users, and it’s got to give
lightning response to queries, so the problems where you see this are real-time fraud detection,
real-time recommendations, and IoT type applications, and so on. So, that’s using Neo4j as a real-time, transaction-orientated database, but it’s also an analytic database. So, it’s used for things like customer 360 and single customer view. It’s used for, as we said
with NASA, knowledge graphs, but also for data lineage and other data analytic type of problems. So, there are a number of use cases where people are using
Neo4j for making sense of the data that they’ve
moved to their data lake so that they can begin to
leverage the investment in Hadoop. And finally for business processes. Some of these are also
real-time, some maybe not. So, identity and access management is a big one where you
need to very quickly, when somebody logs on, be able to work out what resources they’re allowed to access. Network management is clearly
a graph type of problem, so people are using
it, some of the biggest telcos and telco equipment manufacturers, they’re using Neo4j for service assurance, for capacity planning,
the inventory management, and things like that, and similarly, if you think of a supply chain, a supply chain is a linked graph, and Neo4j allows you to do analytics. There are a number of people doing carbon budgeting and
supply chain reporting for ethical compliance using Neo4j. Neo4j’s gathered a fair
amount of attention, so I won’t read this slide in detail, but if you look at the
Bloor Report at the bottom, because we’ve been around a while and because we’ve got the most momentum of all the graph providers, Bloor are able to say
that we’re the Oracle or the SQL Server of the
graph database world. Well, I talked to lots of
people who wouldn’t like us to be the Oracle, we
don’t behave like Oracle, but we are certainly
kind of the solid choice. I think the quote from William Blair, which is a financial analyst,
is interesting as well, that of all the NoSQL models the graph is the one that offers
the most distinct value, and therefore is the one that’s most likely to survive and prevail. So, and just at the top from Forrester, Neo4j dominates the graph market. So, let’s just talk
about the graph platform. What is it, so if you look in the center you see the blue disk,
that’s the database itself, but it has two aspects, as
we’ve talked about before, so it’s got a transactional view, so if you’re looking
to the left of the blob you can see graph transactions, and that’s usually sitting behind APIs and drivers with your end
user applications and UIs, hitting it to provide a kind
of OLTP type of service, but on the other side we
can see graph analytics, so that’s got graph algorithms
and data scientists, and people are trying to explore data, so the use cases for this are
maybe forensic investigations, forensic accounting, or forensic policing, or also data analysis,
so we’ve talked about data lineage and those sort of problems where people need to
explore the graph manually, and we’ve got tools to do that, so we’ve got visualization
and discovery tools, we’re helping that, and we’ve also got a lot of analytics
tooling for automatically detecting patterns in graphs. Okay, so that’s basically
what we’re looking at, and just to position it against some of the other databases
you may be aware that relational databases use the
concept of data normalization, so trying to separate
out different concepts and store them in different tables, so the data related concepts
in different tables, and that’s a very clean way of modeling but often gets compromised
in implementation where you de-normalize
and perhaps the people, reason people do that is
to avoid join operations, and then it gets closer
to NoSQL databases, which are basically aggregate-based. They’re just storing lumps of data with different levels of access and different levels of fine granularity, but Neo4j’s completely
different from that. Neo4j is super normalized. There’s never any need to
repeat anything in Neo4j. It’s all, each data item
is stored individually with no repetition, no null values, and the relationships between us, between the concepts is
very cleanly represented, so it gives you a very clean model with very high performance
and very efficient. So, where do we find it being used? Well, people do just load data from relational databases if they get, they find that their queries
are running too slowly and they can’t necessarily do the queries they want in reasonable time, people will often load data where your, where you’ve got recursive
queries or multiple joins, just load the data into Neo4j grants you those specific queries, and then what we find is that people start doing more and more of
their work in Neo4j. So, that’s a perfectly
legitimate use case, and we see that not just
from traditional tools but also from Spark and
other tools where the, which are designed for analytics but the basic view is tabular, and sometimes you want to have a graph view of the tabular data. So, that’s a very common use case, and that’s often included
in a larger version of that where you’re actually actually looking at Neo4j as an integration layer, either copying the data
also into the graph, that’s very common, or
just holding pointers into the saw systems within the graph, so the graph holds a kind of dictionary for helping you to access
stuff in the lower level. That’s a common use case as well. And finally, and I’ve
mentioned this before, it’s providing a way of helping you to get value out of your data lake, so I mentioned before using Neo4j as a dictionary in today’s lakes, but also where your data
lake has got too much latency and you need to start doing
real-time operations against it. Neo4j’s a great way of
finding the patterns and then building a, almost a cache for doing real-time transaction serving. I mentioned, if you remember, the picture of the overall
schematic of the system. There was the analytics area on the left. We’re very proud, we
just published a book, which has had an extremely
high rate of downloads. You can get it for free on our website. Graph Algorithms by Mark
Needham and Amy Hodler, and that’s, these are
service side algorithms that you can run against Neo4j or against Apache Spark,
or in combination, and if you look at the
main part of the slide there are 35 algorithms that are grouped into complex weighted pathfinding, centrality, so that’s things like PageRank and other centrality algorithms, community detection,
so if you’re looking at a large number of transactions
you might be able to, by analyzing the way the transactions are linked to each other
and to other data items, you might be able to detect that actually within your community you’ve
got different demographics, you might have males and females, you might have people of different ages or different interest groups, and by being able to analyze the connections between the data we can propose the separate communities that will help you understand your, the population you’re dealing with better. Link prediction, so that’s
something that’s very common in sort of crime fighting and things, where you’ve got two people
who’ve got something in common, perhaps they’ve got a crime in common or perhaps they’ve got
some other relationship, and you can predict that these two people, although they’re not previously linked, should be linked together. So, because we’ve got the, if you remember back to the model picture,
we’ve got properties that we can store and relationships. We can store, for example, a confidence level along
with a link prediction, so we might be able to say that somebody is 90% certain to know
somebody else, for example. And then similarity, so it mentions they’re looking at
similarities between nodes. Even more interesting is
similarity between paths, so if you’re looking at
analyzing paths across a website you can train the database to recognize which paths lead to happy outcomes and which paths lead to, I don’t know, basket abandonment or
other unhappy outcomes, and then see what the characteristics of the two types of paths have and see if you can do
something to increase the number of people
with the happy outcome. This is just drawing attention to the fact that we’ve got an end
user visualization tool. Neo4j, when you download it, comes with a browser-based visualization, so you can download the
community version of Neo4j and get going immediately with a browser-based visualization, and that’s really designed for developers who are happy to learn
the Neo4j query language, the Cypher language I’ve mentioned. We’ve got another product,
which is Neo4j Bloom, which is designed for end users who don’t want to invest the time in learning Neo4j, but do want to get straight in and start exploring data
and running the algorithms and using Neo4j as end users, so this has got a kind of
natural language interface, which means that you can make a lot of progress very quickly. Okay, so let’s talk about
how people are using Neo4j. So, the main use cases, so
this is more of a heat map. There’s a lot of cross-pollination
between these use groups and there are a number
that aren’t on here, so real-time recommendations
we’ve talked about. You know, if you’re operating
a big retail website, for example, the value
of getting the right recommendation onto a
webpage that’s in front of somebody’s eyeballs
cannot be underestimated. If you can increase just
by a small percentage the amount of, the chance that somebody will act on a recommendation, then you, the value to you is immense, and that’s your only chance
to get to sell somebody other than the thing they came to your website for in the first time, so it really ups the basket value. And that, the science behind that is, as you can imagine, very complex and very, very suited to a graph. Fraud detection’s another great example, so I’d like to talk about
this in more detail, but just for the moment, if you’re trying to defraud somebody you can just be brave and try and get a million pounds out of somebody’s bank account, but most banks and other services have got wise to the, somebody knocking on the front door trying
to, or trying to break in through the front door and steal things, so they’ve got basic checks. Now, the criminals, in order to get round those basic checks, decide that since there’s a point at which a fraud is too low value to be worth pursuing, so they try to do frauds
that are too low value to be detected by the basic detection. The trouble with that, of course, is that if you’re a
fraudster you don’t make very much money out of
these low value frauds and it’s not gonna pay for your yacht, so you then need to start saying, “Well, okay, I’m gonna have
to do this at massive scale,” and doing it at massive scale inevitably involves
building some connections, so you might be thinking
about fake identities, but those often need to
have some real identity, so there was a case in the news recently in the UK of a house which had over 1000 people apparently living in it because it was being used by
fraudsters as a false address, and actually that’s a very good example because that’s exactly the sort of thing that you can detect using a graph, because that means there’s a pattern between transactions that
apparently are unrelated, so all these low value transactions that are going under the
radar of the normal detection are leaving a trail, and
that trail is a graph, and Neo4j can help you to detect that. So, I want to talk through the rest of these examples in a lot of detail, but we haven’t got very much time, but master data management is a good one. That’s where you’ve got multiple products, multiple channels, multiple offerings, and you need to form a
single view of your customer, or alternatively where you’ve got complex product hierarchies and you want to have a uniform product hierarchy, and if we have time we’ll talk about eBay and using Neo4j in that way. The Knowledge Graph is a great example, and behind that we probably place most of the very large life sciences examples. So, we’ll talk a little
bit about those going on, and identity and access
management we’ve talked about. So, these are some of the people who are using Neo4j for these types of use cases. Itau, if you’re not familiar with it, is the biggest bank in Brazil. So, I said I’d come back
to the Panama Papers, so this was, I said, it’s a
Pulitzer Prize-winning effort and it resulted in some pretty
big real world news stories. A scandal around Messi, the footballer, but even more significantly big political scandals in
a number of countries. So, the way these people, what happened was that a disk was stolen, and that contained all sorts of things. So, it contained fragments
of databases, log files, crank statements, emails,
PDFs, all sorts of things, and that led to the journalists
scratching their heads to say, “Well, I’m sure this is valuable “but what’s it telling me?” So, they used some scanning software and they started to identify
looking at the names, and from names they were then, because of the nature of the data, able to identify bank accounts and banks, but then they were also able to start looking at street addresses, and that began to give them some clues as to who else was there, so in this case the story of
the prime minister of Iceland. Prime minister of Iceland was, at the time of the great financial
crisis in the late 2000s, Iceland set up a distressed
asset holding company, and he knew which of the distressed assets were very distressed and which
ones are less distressed, but he knew he couldn’t act on that because it would be, it
would compromise his job. However, he made the mistake
of telling his wife about it and it became clear that his wife, who lived at the same
address, had a different name, but lived at the same address could be linked to him
by the Neo4j database, and that gave them the
clue that they needed, so she had a holding
company that was investing in this distressed asset company, so that was the way that
that fraud unfolded, and there are similar
examples all over the place. So, this is, you know, Neo4j
is doing a little bit of magic and creating relationships between things that you didn’t necessarily
know were related. So, sorry, I skipped on. So, we built the data model from that, so you can see in the database the model, these color blobs are very
like those real world entities, and we’ve got the nodes and relationships that we described before,
so this is an example of the physical model
being exactly the same as the conceptual or the business model, so that’s a huge advantage for anybody who’s trying to explain the
system to a business person, or trying to maintain
it, or trying to maintain some sort of fidelity between the business problem and
the technical solution. So, we’re running out of time, but let’s just look at some
other use cases rather quickly. So, we’ve talked about
real-time recommendations, and this is Walmart, so the
point I like there is that these are complex transactions,
22 hops in some cases. They’re extraordinarily fast, so very low numbers of milliseconds, which is fast when you consider the number of transactions, 35 million a day maybe, and as a result of this,
because IBM Websphere ecommerce server was unable to do these real-time recommendations, in this case the company’s target, another big box retailer in the US, are using Neo4j for their recommendations. Marriott using Neo4j,
also replacing a big, very expensive Oracle database
to do real-time room pricing, so this is the sort of room pricing that when Madonna announces
that she’s doing a tour, or when some real world event happens, a flood or a strike or something, it changes the number of
people visiting a city, you need to be pretty fast
to get your pricing right or you could miss some revenue, or you could be left with
a lot of unsold rooms. So, there’s a lot of effort and thought goes into this sort of pricing and it turns out that a graph-structured algorithm is the best way to do it. Finally we talk about DHL. So, this is in fact in Germany where Neo4j is used for
routing all the parcels, and so this is a very
real-time application reaching all the parcels that are shipped around the country and by
airports around the world, and this is dynamic as motorways snarl up or airports get put out of
action or flights get canceled, real-time routing of very,
very large numbers of packages. Just the last few slides now. We’re just talking about a
couple of detailed use cases, so this is an internet of things use case, so Xfinity from Comcast is
their Intelligent Home Hub, which is carrying all sorts of data, so it’s not just your
internet and voiceover IP, but also cable and maybe
host security, and video, and your nest implementation, and so on. So, all of this gets implemented, gets stored in a Neo4j database, which gives content recommendations and helps Xfinity to understand
its customers better, or Comcast to understand
its customers better and to give them a better service. Next we’ll look at something
from the financial world, the Thomson Reuters Knowledge Graph. I think it’s now it’s called Refinitiv, which is, this is very interesting, so what they’re doing
is providing a service to the investors which helps investors to understand the supply chain of the companies that
they’re investing in, so if you have a news event, so this is scanning news stories and creating a Knowledge Graph
based on the news stories, we have a news event
that affects a company, you and all your other competitors in other investment companies
will get that news story at that, at the same moment more or less, but the person that
understands the implications of that news story in
terms of what it means for the competitors of the firm, or for the suppliers of the firm, or for the customers of the firm, will be the ones that are ahead, and that’s what Thomson Reuters have mapped in this Knowledge Graph. So, it’s kind of an
impact analysis use case, which allows you to understand the way in which a news story might
affect your investments. We’re gonna talk about the eBay ShopBot. So, this is something that’s
been running for a while, first on Amazon but now,
sorry, first on Facebook, but now on the big Google ecommerce, so Neo4j is providing a tool for natural language understanding, and if you think about a
sentence in any language, that sentence has got a
subject and a predicate, it’s got potentially adjectives and all sorts of things
as part of the predicate, so that is a structured thing, and in fact it’s very
commonly modeled as a graph, so Neo4j can help you to structure and understand input sentences, whether it’s text, or voice, or whatever, and then secondly there’s
a Knowledge Graph, so we’re not only helping
them with the understanding, but also with finding products in their catalog that match the request, and there’s a very nice video, if you want to spend
some time on our website, showing how eBay are using
Neo4j to improve searches. So, I think this is finally, this is another fantastic story. This is a cooperation between a lot of research centers in Germany who are using Neo4j to
pull together information from dozens, in fact, over 50
databases all across Europe, helping to form a more and more complete picture of the different forms of diabetes and the way in which they react to medicines and different therapies, so that’s a great story, and again, there’s a very good video
on our website that, where the scientists who put this together talk about the reasons they’ve done it and why Neo4j has made it possible to do things that they couldn’t do with their previous graph implementation. Okay, that is the end of the presentation, so okay, most of the time allotted, but we’ve got a few
minutes left for questions if anybody’s got any questions.

1 thought on “Introduction to Neo4j – June 2019

Leave a Reply

Your email address will not be published. Required fields are marked *