Open-source graph database, built for real-time streaming data, compatible with Neo4j.
cyphergraphgraph-algorithmsgraph-analysisgraph-databasekafkakafka-streamsnosqlopencypherstream-processingstreaming-data
Summary: Although the first solution used cereal, the final implementation uses boost. Since the cereal is still used in the codebase, compilation has been modified to support multithreaded cereal. In addition to serializing Ast classes, the following also needed to be serialized: * GraphDbTypes * Symbol * TypedValue TypedValue is treated specially, by inlining the serialization code in the Ast class, concretely PrimitiveLiteral. Another special case was the Function Ast class, which now stores a function name which is resolved to a concrete std::function on construction. Tests have been added for serialized Ast in tests/unit/cypher_main_visitor Reviewers: mferencevic, mislav.bradac, florijan Reviewed By: mislav.bradac Subscribers: pullbot Differential Revision: https://phabricator.memgraph.io/D1067 |
||
---|---|---|
cmake | ||
config | ||
customers | ||
docs | ||
experimental | ||
libs | ||
poc | ||
release | ||
src | ||
tests | ||
tools | ||
.arcconfig | ||
.clang-format | ||
.gdbinit | ||
.gitignore | ||
.ycm_extra_conf.py | ||
CHANGELOG.md | ||
CMakeLists.txt | ||
coverage | ||
Doxyfile | ||
Doxylogo.png | ||
init | ||
llvm-gcov | ||
README.md |
memgraph
Memgraph is an ACID compliant high performance transactional distributed in-memory graph database featuring runtime native query compiling, lock free data structures, multi-version concurrency control and asynchronous IO.
dependencies
Memgraph can be compiled using any modern c++ compiler. It mostly relies on the standard template library, however, some things do require external libraries.
Some code contains linux-specific libraries and the build is only supported on a 64 bit linux kernel.
- linux
- clang 3.8 (good c++11 support, especially lock free atomics)
- antlr (compiler frontend)
- cppitertools
- fmt format
- google benchmark
- google test
- glog
- gflags