# 简介
Bitalos是作业帮平台技术团队出品,高性能分布式存储系统,核心引擎基于bitalosdb(自研高性能KV存储引擎),兼容redis协议;作为redis的替代品,用成本更低的硬盘存储数据,充分发挥多核优势,且单核性能优秀,可大幅降低服务成本。
开源版本,集成dashboard(可视化管理平台)、stored(存储服务)、proxy(代理服务)、bitalosdb(存储引擎)于一体,是完整的工业级解决方案。
# 主创
作者:徐锐波,2018年12月加入作业帮,在职至今,先后负责直播课中台研发及作业帮平台研发;同时带领存储技术团队,从0到1研发Bitalos
贡献者:幸福、卢文伟、刘方、李景晨
# 实践(作业帮)
应用:承载作业帮在线&离线KV存储
峰值流量:QPS(30 Million),Network(8000Gbps)
存储数据:1PB
读耗时均值:0.1ms,写耗时均值:0.15ms
可用性:99.999%
稳定性:2019年发布V1.0至今线上零事故
# 关键技术
兼容redis协议,接入成本低;支持大部分命令,包括LUA、分布式事务.
高性能数据一致性架构,基于bitalos-raft,深度优化Raft协议,大幅提升写性能,并具备更稳定的选举策略和数据同步流程.
高性能索引,基于ASM汇编实现向量计算,性能显著提升.
高性能存储结构,压缩redis复合数据类型,大幅降低IO成本,提升系统吞吐.
高效水平扩展,最多支持1024个分片,且能够秒级扩分片.
多云容灾,支持多机房或多云部署&管理,拥有完整的降级&容灾方案.
多主写入(企业版支持),基于CRDT,优化数据同步及一致性策略,确保单分片多主写入时能自适应解决冲突,并达成最终一致.
高性能内核,装备自研KV引擎:bitalosdb,较之rocksdb,性能大幅领先.
Bithash(KV分离技术)
Bitalostree(高性能压缩索引技术)
Bitalostable(冷热数据分离技术)
# 技术积累(bitalosearch)
高性能分布式检索&分析引擎,SQL协议,主打AP场景,并具备一定的TP能力;正在内部实践,开源计划待定
bitalosearch较之elasticsearch,成本优势明显;硬盘消耗,节省30%;数据写入,性能提升25%;复杂分析逻辑,性能提升20%~500%