# Introduction

  • Bitalos, produced by Zuoyebang platform technical team, is a high-performance distributed storage system, core engine based on bitalosdb (self-developed high-performance KV storage engine), compatible with Redis protocol. As an alternative to Redis, it stores data with low-cost hard disk instead of expensive memory, takes full advantage of multi-core and provides excellent single-core performance, which can significantly reduce service costs.

  • Bitalos contains three main projects: dashboard (visual management platform), stored (storage service), and proxy (proxy service). Current open-source version is stable, and provides a complete industrial grade solution.

# Creator

  • Author: Xu Ruibo, joined Zuoyebang in Dec 2018 (working till now), is responsible for live class middle platform and user product middle platform, and leads the storage technology team to develop Bitalos from 0 to 1.

  • Contributors:Xing Fu, Lu Wenwei, Liu Fang, Li Jingchen

# Practice (Zuoyebang)

  • Number of clusters: 100+

  • Deploy: 3 clouds (Tencent, Ali, Baidu)

  • Application: carry 90% of the KV storage traffic in Zuoyebang

  • Peak traffic: QPS(20 Million),Network(5000Gbps)

  • Storage data: 200TB

  • Average reading time: 0.1ms, average writing time: 0.15ms

  • Availability: 99.999%

  • Stability: Since V1.0 was released in 2019, there have been zero online incidents

# Key Technology

  • Compatible with Redis protocol, low integration cost. Supports most commands, including LUA, distributed transactions.

  • High-performance data consistency architecture, based on bitalos-raft, deeply optimized Raft protocol, significantly improved write performance, and more stable election strategy and data synchronization process.

  • High-performance storage structure. By compressing redis composite data structure, greatly reduce disk I/O bytes, and improve system throughput.

  • Efficient horizontal scaling, supporting up to 1024 shards. Each shard includes at least 1 slot. Each slot can be migrated between any shards without affecting upstream services.

  • Multi-cloud disaster recovery, supports multi-room or multi-cloud deployment & management, and has a comprehensive complete downgrade & disaster recovery solution.

  • Multi-master write (enterprise edition support). Based on CRDT, optimize data synchronization and consistency strategy, ensure that conflicts can be adaptively resolved when written to multi-master in same shard, and guarantee eventual consistency.

  • High-performance core, equipped with self-developed KV engine: bitalosdb, which has a significant performance breakthrough compared to rocksdb.

    • Bithash (KV separation technology)

    • Bitalostree (high-performance compression index technology)

    • Bitalostable (cold and hot data separation technology)

# Technology accumulation(bitalosearch)

  • High performance distributed search & analysis engine, SQL protocol, focusing on AP scenarios, and has certain TP capabilities. It is being practiced internally, and the open source plan is to be determined

  • Compared to elasticsearch, bitalosearch has significant cost advantages. Hard disk consumption is saved 30%; data writing performance is improved by 25%; for complex analysis logic, query performance is improved by 20% to 500%

ZUOYEBANG