LevelDB 服务器 SSDB 支持主从(master-slave)同步了!

ideawu 2013-01-06 13:34

经过前段时间的连续奋战, 前两晚的代码清理和收尾, 基于 LevelDB 的 KV(支持数据类型包括 hashmap, zset) 存储服务器 SSDB 终于发布了 1.2.0 版本. 这是一个里程碑式的版本, 因为从此 SSDB 支持了主从同步(master-slave replication), 再加上在线备份功能, SSDB 已经成为一个真正的生产环境的存储服务器!

Google 的 LevelDB 存储引擎保证了 SSDB 至少能存储 T 级别的数据, 并在上面进行快速的查询, 有报告称 100G 级别的数据已经在网站上正常工作. 而 SSDB 本身实现的备份和主从同步特性, 则是对生产环境的必要支持 –负载均衡 .

从实现上, SSDB 利用 LevelDB 来存储数据, 以及数据的更新历史. 由于两者都是 LevelDB 来保证持久化, 所以 SSDB 的主从同步可以容忍不稳定的网络, 包括网络异常中断, 带宽起伏等, 因为 SSDB 能从上一次的同步状态中继续恢复. 相比较, Redis 在这方面做得不好, 经常因为网络不稳定而导致主从之间不断地进行全量数据的复制.

SSDB 1.2.x 是 beta 版, 欢迎在这方面有经验的同学参与进来一起开发, 已经有百度的前同事决定要加入进来了.

SSDB 项目地址:https://code.google.com/p/zdb/

另外, LevelDB 本身还有一些待改进的地方, 例如在磁盘写 IO 上面没有限速, 磁盘写 IO 限速在生产环境中是非常重要, 我们的经验证明了这一点. 一旦磁盘写压力过大, 不仅导致其它进程可能阻塞, 甚至可能对操作系统也有影响.

Related posts:

  1. SSDB – 支持 zset 的 LevelDB 服务器
  2. SSDB 解决了 Snappy 导致 LevelDB 编译失败的问题
  3. SSDB 已经支持在线备份功能!
  4. SSDB(LevelDB 服务器) PPT
  5. 在PHP代码中使用LevelDB

[返回] [原文链接]