高性能NoSQL数据库ssdb

pny8

贡献于2015-08-19

字数:0 关键词: NoSQL数据库 SQL

SSDB 2014 ideawu http://ssdb.io/ 14年 8⽉ 7⽇周四 ssdb • ⾼性能 NoSQL数据库 • ⽀持丰富的数据结构 • ⽀持所有主流语⾔ • ⽤于替代 Redis, ⽀持 Redis客户端 • C++开发 , LevelDB作为引擎 , 开源 14年 8⽉ 7⽇周四 ssdb vs redis 14年 8⽉ 7⽇周四 why redis • memory is fast • data structure is king 14年 8⽉ 7⽇周四 why ssdb • disk is cheap • data structure is king 14年 8⽉ 7⽇周四 ssdb擅⻓ • 替代 Redis, 存储容量是 Redis 100倍 • Key Value, time-based list, map, zset • 好友列表 , mailbox, 战⼒排⾏榜 , 微博 timeline • Cache服务 , 持久化队列服务 14年 8⽉ 7⽇周四 ssdb的⽤户 14年 8⽉ 7⽇周四 在 360的应⽤ • 玩平台 1亿⽤户的积分数据 • 400G数据 , 内存占⽤ 1~2G • 每秒 300多次写 , 读少 • ⽤户的积分变动历史记录 , 单列表 0~10万条 • 图床图⽚处理的临时存储 , 1亿张图⽚ /天 • 棋牌部⻔ • 消息系统 , 红钻 , ⽤户玩过的游戏历史 ... 14年 8⽉ 7⽇周四 在 360之外的应⽤ • ⽐亚迪 : 存储⻋联⺴数据 • TOPGAME: 知名⼿游⼚商 , 使⽤ SSDB存储 游戏业务逻辑的数据 • 多个国内外创业团队的项⺫ : 美国 , 乌克 兰 , 印度 ... • http://ssdb.io/docs/zh_cn/users.html 14年 8⽉ 7⽇周四 why ssdb is so fast • leveldb, lsm-tree • append-only log write • .sst & compaction • sorted table file(.sst), Log .sst .sst .sst .sst .sst compaction compaction bloomfilter, cache, locality(bulk read) 14年 8⽉ 7⽇周四 主从同步 • 主从 , 双主 , 多主 14年 8⽉ 7⽇周四 双主和多主 • 需要使⽤者感知 • ⼀般只启⽤单主 , 出故障时更改客户端指 向 14年 8⽉ 7⽇周四 主从同步的实现 • Binlogs • 操作重放 • 数据和 Binlog依赖 LevelDB的 WriteBatch原 ⼦写操作 14年 8⽉ 7⽇周四 多线程利⽤多核 • Redis是全内存操作 • 单线程 , IO多路复⽤主循环 • ⾜够快 , ⽆锁 • ⽆法利⽤多核 • SSDB是多线程的 • IO多路复⽤ +多线程池 , SelectableQueue • 锁不是性能杀⼿ , 资源等待才是 • 充分利⽤多核 CPU 14年 8⽉ 7⽇周四 IO多路利⽤ +多线程 main(){ fds = select/epoll(); foreach(fds as fd){ if(fd is ResponseFd){ response = fd.recv(); response.send(); }else{ request = fd.recv(); queue.add(request); } } } 14年 8⽉ 7⽇周四 again, why ssdb? • 优越的性能 • 强⼤的 API • 丰富的⽂档 • 活跃的社区 • 开放源代码 14年 8⽉ 7⽇周四 Q & A ideawu https://github.com/ideawu/ssdb 14年 8⽉ 7⽇周四

下载文档,方便阅读与编辑

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 5 金币 [ 分享文档获得金币 ] 0 人已下载

下载文档

相关文档