Distributed scalable storage system BaikalDB

BaikalDB is a distributed storage system may be extended to support the structure of PB-level real-time random data read and write.

MySQL provides an interface that supports common SELECT, UPDATE, INSERT, DELETE syntax. Provide various filtering WHERE, GROUP BY polymerization, the HAVING filtered, ORDER BY sorting functions, the user can achieve a variety of combinations of line OLAP demand, comprising one hundred million second level scanning data aggregation capabilities. In addition, in order to meet the needs of a variety of retrieval operations, the built-in full-text search system needs to meet the most rapid retrieval of business scenarios.

In a virtualized deployment, the system uses share-nothing architecture that can be deployed in the container, but also to achieve a multi-tenant isolation, have a custom user identification and access control.

BaikalDB main features are as follows:

  • Full autonomy capacity management, automatic expansion and automatic data balancing, automatic failover support, without a single point, it is easy to implement cloud technology, currently running at over Paas virtualization platform.
  • Oriented query optimization, support a variety of secondary indexes, including full-text indexing, OLAP supports popular demand, support for hierarchical model.
  • Mysql compatible protocol, provide SQL interface to the application side, support for high-performance Schema plus column.
  • Based RocksDB achieve a single store, based on Multi Raft protocol (we use braft library) copy protection data consistency, interactive communication node based brpc achieve.
  • Support for multi-tenancy, meta information sharing, data storage completely isolated.

among them

  • BaikalStore responsible for data storage, organized by region, three region three Store forming a Raft group to achieve three copies of multi-instance deployment, downtime Store instance can automatically migrate data Region.
  • BaikalMeta responsible for the meta-information management, including partitioning, capacity, authority, balancing, Raft guaranteed 3 copies of the deployment, Meta downtime affects only enhance the site weights data expansion can not migrate, does not affect the data read and write.
  • BaikaDB responsible for front-end SQL parsing, query execution plan generation, no state-wide homogeneous multi-instance deployments, the number of instances of downtime does not exceed the load limit can qps.

Guess you like

Origin www.cnblogs.com/1994jinnan/p/11886458.html