Open-source graph database, built for real-time streaming data, compatible with Neo4j.
Go to file
Matija Santl 7b88e514b8 Add ClusterDiscovery RPC for distributed BFS
Summary:
Implemented cluster discovery in distributed memgraph.
When a worker registers, it sends a RPC request to master.
The master assigns that worker an id and sends the information about other
workers (pairs of <worker_id, endpoint>) to the new worker.
Master also sends the information about the new worker to all existing workers
in the process of worker registration.

After the last worker registers, all memgraph instances in the clusters should
know about every other.

Reviewers: mtomic, buda, florijan

Reviewed By: mtomic

Subscribers: teon.banek, dgleich, pullbot

Differential Revision: https://phabricator.memgraph.io/D1339
2018-04-09 14:28:22 +02:00
cmake Cleanup and reorganize release directory 2018-01-15 10:12:59 +01:00
config Remove executor not run option 2017-12-18 14:36:15 +01:00
customers Implement manage script for card fraud demo 2018-02-12 13:29:12 +01:00
docs Add ExpandWeightedShortestPathCursor 2018-02-14 09:32:41 +01:00
experimental Integrate code coverage with Apollo 2018-01-15 12:20:11 +01:00
libs Remove PostgreSQL 2018-03-28 15:38:54 +02:00
poc Add parallel customers/Otto test 2017-11-23 09:20:53 +01:00
release Remove hardcoded build directory in build_examples 2018-03-28 10:17:11 +02:00
src Add ClusterDiscovery RPC for distributed BFS 2018-04-09 14:28:22 +02:00
tests Add ClusterDiscovery RPC for distributed BFS 2018-04-09 14:28:22 +02:00
tools Update tx_id to 0 2018-04-06 09:59:37 +02:00
.arcconfig arcconfig: Default to master for diff and land 2017-11-07 18:41:51 +01:00
.clang-format Edges data structure now supports multiple edge filtering (implicit OR) 2017-09-26 13:46:18 +02:00
.gdbinit Add pretty printer to gdb for TypedValue 2017-08-16 11:32:25 +02:00
.gitignore Changed macro benchmark summary format 2017-12-28 16:35:45 +01:00
.ycm_extra_conf.py Configure YCM for Cereal 2017-12-06 14:28:34 +01:00
apollo_archives.py Refactor Apollo build projects 2018-03-27 13:47:18 +02:00
apollo_archives.yaml Refactor Apollo build projects 2018-03-27 13:47:18 +02:00
apollo_build.yaml Refactor Apollo build projects 2018-03-27 13:47:18 +02:00
CHANGELOG.md Update the changelog for v0.10 2018-03-29 16:48:53 +02:00
CMakeLists.txt Add basic support for RPM packaging 2018-03-27 16:50:09 +02:00
Doxyfile Add initial version of Apollo config files 2018-01-10 14:46:10 +01:00
Doxylogo.png Doxygen setup 2016-12-20 15:49:52 +01:00
init Implement simple log file storage for raft 2018-01-15 18:07:45 +01:00
README.md Migrate command line args to gflgs in tests 2017-07-06 13:54:12 +02:00

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