Graph Databases are the New Black

When I started working on computers, the main thing people used databases for was storing tabular data.  Sales reports, inventory records, lists of things.  Relational databases were cool because you could associate a transaction in your sales table with an item in your inventory table.  As the internet has grown, however, our database needs have outgrown the abilities of the standard relational database system.  Social networks are a great example of this – the type of query needed to ask for six degrees of Kevin Bacon separation in a relational database is complex, resource intensive, and extremely time consuming.  Many very smart people have come up with ways to work around this problem, but the real problem is that this type of question is not what relational databases are designed to handle.

Graph databases, on the other hand, are optimized for exactly this type of question.  The problem with graph databases is that it’s a whole different data structure that we’ve got to wrap our minds around, and it’s difficult to do that without some starting place.  Freebase is a publicly  accessible, open graph database, available for people to use as the back end for their applications.  They’ve even created a suite of tools to make it easier to build fun things on top of their extensive data. They will be giving a tutorial on Semantic Technologies at OSCON, and if you have any interest in learning about graph structure and what you can do with it, you should definitely check it out.
If you want a more data-agnostic view of graph technologies, or want to try installing a graph database on your own, you can learn about Neo4J, an open source graph database, on Wednesday afternoon.