GraphEngine

Microsoft Graph Engine

Github stars Tracking Chart

Graph Engine - Open Source, -, Windows Multi Targeting, Ubuntu 16.04 .NET Core, :------:, :------:, :------:, Build, , , Tests, _, _, Stress, _, _, This repository contains the source code of 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 on top of Graph Engine that
combines the capability of fast graph exploration with the flexibility
of lambda expression. Server-side computations can be expressed in
lambda expressions, embedded in LIKQ, and executed server side
during graph traversal.

How to Contribute

If you are interested in contributing to the code, please fork the
repository and submit pull requests to the master branch.

Pull requests, issue reports, and suggestions are welcome.

Please submit bugs and feature requests as GitHub Issues.

Getting started with Graph Engine

Downloads

Recommended: Install by searching for "Graph Engine" in the Visual Studio UI under Tools > Extensions and Updates

It can also be downloaded from Visual
Studio Gallery
.

NuGet packages Graph Engine Core and LIKQ are available in the NuGet Gallery.

Graph Engine is regularly released with bug fixes and feature enhancements.

Building on Windows

Install Visual Studio 2017, making sure to include the following components:

  • .NET desktop development
    • .NET Framework 4 -- 4.6 development tools
  • Desktop development with C++
    • Windows 10 SDK
    • Windows 8.1 SDK and UCRT SDK
  • Visual Studio extension development
  • .NET Core SDK 2.0 or above
  • cmake

.NET Core SDK and cmake can also be installed using their standalone installers.

The Windows build will generate multi-targeting nuget packages for all the available modules.
Run tools/build.ps1 with powershell to setup a workspace folder build, and build using cmake.

The Linux native assemblies will be automatically packaged (pre-built at lib), allowing the
Windows build to also work for Linux .Net Core.

Nuget packages will be built and put at
build/GraphEngine**._version_.nupkg. The folder build/ will be
registered as a local NuGet repository and the local package cache for
GraphEngine.** will be cleared. After the packages are built, you
can run dotnet restore to use the newly built package.

Building on Linux

Install libunwind8, g++, cmake and libssl-dev. For example, if you are using Ubuntu, run sudo apt install libunwind8 g++ cmake libssl-dev.

Install the dotnet package following the official guide.

Execute tools/build.sh.

The Windows native assemblies will be automatically packaged, so the
Linux build will also work for Windows .Net Core.

Because targeting .Net Framework is not supported, the packages built on Linux are not
equivalent to their Windows builds, and will only support .Net Core.

Nuget packages will be built and put at
build/GraphEngine**._version_.nupkg. The folder build/ will be
registered as a local NuGet repository and the local package cache for
GraphEngine.Core will be cleared. After the packages are built, you
can run dotnet restore to use the newly built package.

Note: the build script is only tested for Ubuntu 16.04 and Ubuntu 18.04.

License

Copyright (c) Microsoft Corporation. All rights reserved.

Licensed under the MIT License.

Overview

Name With Ownermicrosoft/GraphEngine
Primary LanguageC#
Program languageC# (Language Count: 13)
Platform
License:MIT License
Release Count0
Created At2017-02-09 05:02:16
Pushed At2023-12-23 06:27:51
Last Commit At2023-12-23 14:27:36
Stargazers Count2.2k
Watchers Count128
Fork Count325
Commits Count1.8k
Has Issues Enabled
Issues Count208
Issue Open Count46
Pull Requests Count114
Pull Requests Open Count0
Pull Requests Close Count25
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private
To the top