Last week Microsoft released the code for Graph Engine on GitHub, turning it into an open-source, MIT-licensed project. The company expects Graph Engine to be an alternative to the likes of Neo4j or the Linux Foundation's recently announced JanusGraph.
Graph Engine's graph query language is called LIKQ and the engine already powers the Academic Graph Search API, which is part of Microsoft's Cognitive Services. Graph Engine's RAM store can manage billions of run-time projects and provides efficient memory management with high memory utilization ratios.
Microsoft's Graph Engine has several built-in features for distributed programming, including:
- Declarative data modeling and network programming;
- Full IntelliSense support;
- Language-Integrated Query;
- Remote application deployment, control, monitoring, and debugging.
From Trinity to Graph Engine
Microsoft introduced Trinity back in 2013 as “a general purpose graph engine over a distributed memory cloud.” Trinity supported online query processing and offline analytics on large graphs, while it also leveraged graph access patterns in both online and offline computation.
In May 2015, Microsoft released the Graph Engine 1.0 Preview to the public, which replaced Trinity. Graph Engine was introduced as “a versatile general-purpose computation engine,” that provides a unified declarative language for both data modeling and message passing.