Microsoft Graph Engine is a distributed
in-memory data processing engine, underpinned by a strongly-typed
in-memory key-value store and a general distributed computation
This repository contains the source code of Graph Engine and its graph query language -- Language Integrated Knowledge Query (LIKQ). LIKQ is a versatile graph query language on top of Graph Engine. It combines the capability of fast graph exploration and the flexibility of lambda expression: server-side computations can be expressed in lambda expressions, embedded in LIKQ, and executed on the server side during graph traversal. LIKQ is powering Academic Graph Search API, which is part of Microsoft Cognitive Services.
Graph Engine alternatives and similar packages
Based on the "Storage" category.
Alternatively, view Graph Engine alternatives based on common mentions on social networks and blogs.
PCLExt.FileStoragePortable Storage APIs
Do you think we are missing an alternative of Graph Engine or a related project?
Microsoft Graph Engine
This repository contains the source code of Microsoft Graph Engine and its graph query language -- Language Integrated Knowledge Query (LIKQ).
Microsoft Graph Engine is a distributed in-memory data processing engine, underpinned by a strongly-typed in-memory key-value store and a general-purpose distributed computation engine.
LIKQ is a versatile graph query language built atop Graph Engine. It combines the capability of fast graph exploration with the flexibility of lambda expressions. Server-side computations can be expressed in lambda expressions, embedded in LIKQ, and executed on the Graph Engine servers during graph traversal.
The main version number is bumped to 3.0 to reflect the recent toolchain updates.
- .NET 6.0 is now the mainly supported target framework
- Visual Studio 2022 is supported
One goal of Graph Engine 3.0 is to bring the system up to date and make it slimmer. Some obsolete or outdated modules and tools have been moved to the [Unsupported](src/Modules/Unsupported) directory and removed from the main build pipeline.
Recommended operating system: Windows 10 or Ubuntu 20.04.
Building on Windows
Download and install Visual Studio with the following "workloads" and "individual components" selected:
- The ".NET desktop development" and "Desktop development with C++" workloads.
- The ".NET Portable Library targeting pack" individual component.
Open a PowerShell window, run
tools/build.ps1 for building the NuGet packages.
The script has been tested on Windows 10 (21H2) with Visual Studio 2022.
Building on Linux
Install g++, cmake, and libssl-dev. For example, on Ubuntu, simply run
sudo apt update && sudo apt install g++ cmake libssl-dev
Install .NET SDK x64 6.0 and run:
The build script has been tested on Ubuntu 20.04 with g++ 9.4.0.
Using the built packages
You can find the built NuGet packages
build folder. In the building process, the
build directory has been
registered as a local NuGet repository and the local package cache for
GraphEngine.Core has been cleared. After the packages are built, run
restore to use the newly built packages.
Running your first Graph Engine app
Go to the
samples/Friends folder, execute
dotnet restore and
dotnet run to
run the sample project.
Pull requests, issue reports, and suggestions are welcome.
Please read the [code of conduct](CODE_OF_CONDUCT.md) before contributing code.
Follow these [instructions](SECURITY.md) for reporting security issues.
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the [MIT](LICENSE.md) license.
Microsoft Graph Engine is a research project. It is not an officially supported Microsoft product.
<!-- Links -->
*Note that all licence references and agreements mentioned in the Graph Engine README section above are relevant to that project's source code only.