HugeGraph Computer - A distributed graph processing system for hugegraph (OLAP)

Clone this repo:
  1. 28c29f5 doc(readme): clarify the contributing guidelines (#306) by Zee Huang · 3 weeks ago master
  2. 4d22855 chore: upgrade version to 1.3.0 (#305) by YangJiaqi · 3 months ago release-1.3.0
  3. 192ef3b feat(algorithm): support single source shortest path algorithm (#285) by diaohancai · 3 months ago
  4. f64a608 fix: base-ref/head-ref missed in dependency-review on schedule push (#304) by M · 3 months ago
  5. ad2240a improve(algorithm): random walk vertex inactive (#301) by diaohancai · 5 months ago

Apache HugeGraph-Computer

License Build Status codecov Docker Pulls

The hugegraph-computer is a distributed graph processing system for hugegraph. It is an implementation of Pregel. It runs on Kubernetes or YARN framework.

Features

  • Support distributed MPP graph computing, and integrates with HugeGraph as graph input/output storage.
  • Based on BSP(Bulk Synchronous Parallel) model, an algorithm performs computing through multiple parallel iterations, every iteration is a superstep.
  • Auto memory management. The framework will never be OOM(Out of Memory) since it will split some data to disk if it doesn't have enough memory to hold all the data.
  • The part of edges or the messages of super node can be in memory, so you will never lose it.
  • You can load the data from HDFS or HugeGraph, output the results to HDFS or HugeGraph, or adapt any other systems manually as needed.
  • Easy to develop a new algorithm. You just need to focus on a vertex only processing just like as in a single server, without worrying about message transfer and memory/storage management.

Learn More

The project homepage contains more information about hugegraph-computer.

And here are links of other repositories:

  1. hugegraph-server (graph's core component - OLTP server)
  2. hugegraph-toolchain (include loader/dashboard/tool/client)
  3. hugegraph-commons (include common & rpc module)
  4. hugegraph-website (include doc & website code)

Note

  • If some classes under computer-k8s cannot be found, you need to execute mvn clean install in advance to generate corresponding classes.

Contributing

  • Welcome to contribute to HugeGraph, please see How to Contribute for more information.
  • Note: It's recommended to use GitHub Desktop to greatly simplify the PR and commit process.
  • Thank you to all the people who already contributed to HugeGraph!

contributors graph

License

hugegraph-computer is licensed under Apache 2.0 License.

Contact Us