pingcap / community

TiDB community content
Apache License 2.0
260 stars 151 forks source link

Incubating Program: HugeGraph on TiKV #594

Open javeme opened 2 years ago

javeme commented 2 years ago

HugeGraph on TiKV

Introduction

PingCAP Hackathon is a hackathon held by the TiDB community. In this issue, HugeGraph, a star open source product in the field of graph database, and TiDB, jointly creates a graph database based on TiKV as backend storage. The purpose of this document is to introduce the project in detail and help the team get started quickly.

Background

HugeGraph is an easy-to-use, efficient, and universal open source graph database system, which implements the Apache TinkerPop3 framework and is fully compatible with Gremlin query language. HugeGraph supports the rapid import of hundreds of billions of vertices and edges, provides millisecond-level relational query capabilities (OLTP), and large-scale offline computing and analysis capabilities (OLAP); provides easy-to-use RESTful API and Client, with import, export, backup, recovery, visual interface and other tool components, we can easily build a variety of graph-based database applications and products. It is widely used in social relationship analysis, marketing recommendation, public opinion and social listening, information dissemination, fraud prevention and other scenarios with rich relationship data.

HugeGraph supports plug-in expansion of backend storage, and currently supports RocksDB, Cassandra, ScyllaDB, HBase, MySQL, PostgreSQL, Palo, etc.

The requirements of this project are: use TiKV as the backend storage of HugeGraph to build a set of graph engines with high-level scalability, high performance, and high stability; it can also be based on the basic base of TiKV+HugeGraph and integrate TiDB in financial and other markets to create valuable application solutions.

PingCAP and HugeGraph will provide experienced mentors to help the project team formulate a reasonable follow-up plan and business direction; after the project graduates, it will be incorporated into the HugeGraph open source project as appropriate based on the completion status, for long-term and continuous maintenance, and become a real landing Community projects; At the same time, HugeGraph and TiKV will carry out vigorous publicity and promotion, attracting a large number of HugeGraph and TiKV community users to try out, and continue to improve and optimize the project.

HugeGraph and TiKV are both excellent open source products with strong open source community resources. This project works together to create a graph database system based on TiKV storage to achieve joint technological innovation and industrial ecological cooperation. We look forward to creating unlimited possibilities with the hardest technology and the most explosive ideas.

Detailed Design

We can refer to the implementation of RocksDB backendcom.baidu.hugegraphh.backend.store.rocksdb, Create com.baidu.hugegraphh.backend.store.tikv package to implement the following.

Notes:

Your RFC/Proposal?

https://internals.tidb.io/t/topic/254

sunxiaoguang commented 2 years ago

LGTM

winkyao commented 2 years ago

LGTM

javeme commented 2 years ago

Thanks for the review, we have already pushed the first version of code: https://github.com/tidb-incubator/hugegraph-on-tikv/pull/1