Google Cayley Graph Database
Written by Kay Ewbank   
Wednesday, 02 July 2014

Google has released an open source graph database written in Go, making it available on GitHub.



Cayley can be used for apps that are based on a graph of related information. The database was developed to be fast, free, and easy to get started working with, according to a post on the Google open source blog by Barak Michener. He says that since Google acquired Metaweb and began using Freebase and linked open data,

“it’s been astounding to watch the growth of the Knowledge Graph and how it has improved Google search to delight users every day.

Google’s Knowledge Graph is a database of “knowledge” that it used when you carry out a Google search. The graph database enhances the search results with a graphical view of information gathered from many sources. You’re shown structured details about the topic you’ve searched for and links to other sites that may be of interest.  The idea is that you can find out everything you want without needing to look at multiple sites to find the overall picture.  

Given the importance of Knowledge Graph and the way it has become heavily used throughout Google, developers at Google wanted to create an open source graph database for developers outside Google to use, and the result is the Cayley project, which takes its name from the mathematician Arthur Cayley who was responsible for the Cayley Graph theorem among other things. 

Michener says that

Cayley is a spiritual successor to graphd; it shares a similar query strategy for speed”,

adding that it’s not an exact replica of its predecessor.

Cayley has a RESTful API, and can be used with different backend stores, such as LevelDB and MongoDB. You can use a number of query languages including JavaScript and MQL, and it is designed to be simple to build on top of as a library. Cayley is written in Go, which Michener says has a fantastic standard library and easy access to open source libraries from the community. This, combined with Go’s effective concurrency patterns compared to C, meant that creating a performance-competitive successor to graphd became a reality.

In this a video, which is part of a 3-part series on building a knowledge graph, Barak Michener discusses the role of Caley and how it can be used to explore a dataset:




There’s also a Caley demo in a live instance running on Google App Engine that uses the sample dataset in the repository — 30,000 movies and their actors, roles, and directors using Freebase film schema. This lets you ask questions such as what the neighborhood is of a given actor, or how actors who co-star with that actor interact with each other.


More Information

Caley on GitHub

Caley demo

Cayley: graphs in Go

Google’s Knowledge Graph

Related Articles

Google Search Goes Semantic - The Knowledge Graph 

Neo4j 2.0 A Dream Graph Database 

OrientDB Graph Database Upgraded


To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, FacebookGoogle+ or Linkedin,  or sign up for our weekly newsletter.


SQL Turns 50

The first release of SQL was in June 1974. Designed at IBM by Donald D. Chamberlin and Raymond F. Boyce, it was based on the relational model proposed by E.F. Codd. SQL became the most widely used dat [ ... ]

Kotlin 2 Released With Multiplatform K2 Compiler

Kotlin 2.0 has been released. The new version is a major update with improvements including a stable K2 compiler, which is multiplatform from the ground up, and according to JetBrains understands your [ ... ]

More News


C book



or email your comment to:


Last Updated ( Wednesday, 02 July 2014 )