Cayley: A Graph Engine Inspired by Google’s Knowledge Graph
Barak Michener, a Software Engineer working for the Google Knowledge Team, has open sourced a personal project calledCayley, a graph database inspired byFreebaseand theGoogle Knowledge Graph, the later powering Google’s search engine. Freebase is a collection of free structured data, currently at ~2.7B facts and counting, and anAPIfor querying this data.
Cayley provides a way to append and query complex semantic data stored in various back-end stores such as LevelDB, MongoDB or in-memory. According to Michener, the graph store waswritten in Go for performance reasons:
Cayley is written inGo, which was a natural choice. As a backend service that depends upon speed and concurrent access, Go seemed like a good fit. Go did not disappoint; with a fantastic standard library and easy access to open source libraries from the community, the necessary building blocks were already there. Combined with Go’s effective concurrency patterns compared to C, creating a performance-competitive successor to graphd became a reality.