Open-source graph database, built for real-time streaming data, compatible with Neo4j.
cyphergraphgraph-algorithmsgraph-analysisgraph-databasekafkakafka-streamsnosqlopencypherstream-processingstreaming-data
5bdb04a693
Summary: `heaptrack` shows a miniscule decrease in memory usage during query execution. Running the below query on the TEDTalk database 100 times gives the following results: - number of allocations: from 642647 to 642589 - bytes allocated in total: from 48.79 MiB to 48.78 MiB ``` MATCH (t:Tag)<-[:HasTag]-(n:Talk) RETURN t.name AS Tag, COUNT(n) AS TalksCount ORDER BY TalksCount DESC, Tag LIMIT 20; ``` Regarding `TypedValue`'s destructor: we're allowed to manually destruct the union memebers that we constructed using placement-new. However, it is undefined behavior to call the destructor after an object's lifetime has ended. Calling `TypedValue`'s own destructor within its assignment operator counts as ending its lifetime, which means that the next call to its destructor will invoke undefined behavior. See the C++ Draft N4140, clauses 12.4/15 and 3.8/1.3. Reviewers: teon.banek, mtomic Reviewed By: teon.banek Subscribers: pullbot Differential Revision: https://phabricator.memgraph.io/D1630 |
||
---|---|---|
cmake | ||
config | ||
customers | ||
docs | ||
experimental | ||
libs | ||
poc | ||
release | ||
src | ||
tests | ||
tools | ||
.arcconfig | ||
.clang-format | ||
.gdbinit | ||
.gitignore | ||
.ycm_extra_conf.py | ||
apollo_archives.py | ||
apollo_archives.yaml | ||
apollo_build.yaml | ||
CHANGELOG.md | ||
CMakeLists.txt | ||
Doxyfile | ||
Doxylogo.png | ||
init | ||
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