Graph Databases Unlock Goldmines, Neo4j is the Key
If you haven’t yet heard of graph databases, get ready. They’re the next hot ticket in a world consumed by big data, analytics and the Internet of Things.
They do things other databases do not do well, like help us discover insights via relationships —between people, places or things.
They don’t as much crunch data as help the world make sense of data. “It’s an amazing concept,” said Philip Rathle, vice president of products at Neo Technology, the commercial company behind open source graph database, Neo4j.
And he doesn’t seem to be the only one who thinks so. The graph database has the highest rate of growth of any kind of database in the world.
Unlike traditional databases which squeeze data into tables, graph databases work much the same way as the human brain and they process data similarly as well. They use nodes (which can be a person, a place, a business, a device … just about anything) and the relationship it has to … whatever.
Companies like eBay, Amazon, Linkedin, Facebook and Netflix use these to figure out what you might want to buy, who you might know, what movie you might be interested in and so on.
A node might be someone like Bob and his relationships might be with Bill, his frat brothers and other college chums, Phil the annoying guy who leaves smelly pastrami sandwiches in the fridge at the office, the Plaid Pussycat boutique where has a frequent shoppers card, Smashburger where he eats, Miss Barnes his kid’s kindergarten teacher, the address (gleaned from his mobile) that he ends up at 6 PM Thursday nights, the Runkeeper route he runs, we could go on…
A graph could then map out Bob and Bill’s relationships, other Smashburger customers, similar running routes, other runners who run similar routes and so on.
Needless to say, the relationships and insights that could be gleaned from graph databases are both endless and potentially valuable — they look at causalities via person to person connections (social graphs), patterns of behavior, the steps a person might take before they buy something on the web and more.
Detecting Fraud and More
Rathie gave us a few examples of how businesses are using Neo4j, which may not readily come to mind.
Take, for example, that Neo Technology has a customer that uses Neo 4j to detect fraud. It turns out that thieves, troublemakers and shoppers don’t move the mouse the same way, which gives retailers an ability to stop the bad guys or to get more information before they part with the goods.
A company like eBay uses graph databases, in select cities, to put purchases into a customer’s hands before an Amazon drone (if one even existed) could. This is made possible by eBay knowing what folks who live in a city like New York tend to buy, storing it locally and having relationships with nearby couriers who have availability.
Couldn’t this have been done with a traditional database? Not fast enough, says Rathle. In fact, he said, eBay initially tried to use a SQL database to accomplish this but the required query needed about 700 lines of code. A graph database, using Neo4j, needs ten.
Not only that, but Neo Technology’s Neo4j, in general, requires 1/100 lines of code and runs as much as 1,000 times faster.