站在Digg的尸体上谈谈Cassandra  盛大云计算 王旭
About Me• 码农 @ 盛大云计算 / 云硬盘 (EBS)• 前Hadoop Developer• 技术作者、译者《Cassandra权威指南》  (据说像机器翻译的)• http://wangxu.me/blog/• @gnawux
大纲• Cassandra的成长历程• Cassandra的主要特性• Cassandra的相关工具• Cassandra的核心技术
Cassandra是谁• 希腊神话中的特洛伊公主• 太阳神阿波罗的爱慕与赠予• 悲剧的女先知• ……
我们谈的Cassandra•   无中心的、高性能、可扩展的、分布式非关系型数据库•   出身名门:    •   Facebook开源的NoSQL数据库•   万千宠爱:    •   Twitter, Digg, Rackspace...•...
John QuinnDigg的故事
Digg的未来http://about.digg.com/blog/looking-future-cassandra/
⼀一年后……    http://techcrunch.com/2010/09/07   /    digg-struggles-vp-engineering-door/
Digg员工如是说……               http://www.quora.com/Is-Cassandra-to-blame-               for-Digg-v4s-technical-failures  但究竟Di...
Twitter in 2010              FRIDAY, JULY 9, 2010
Facebook in 2010
为什么Cassandra不靠谱• Repair: 数据修复的可靠性  (CASSANDRA-1316)• Scale: 插入节点对集群的影响/负载均衡  (CASSANDRA-192)• Compaction: 对性能的影响• Memory (...
今日Cassandra
Cassandra @ Twitter
Web Analytics of Twitter
SpiderDuck of Twitter
Rainbird of Twitter
Cassandra @ Netflix
Cassandra @ Netflix
为什么Cassandra很酷• 无中心架构,Column Family数据模型• 很快,写操作更快• 性能线性扩展(ref: netflix, ycsb...)• Counter数据类型
Gartner的成熟度曲线Gartner的技术成熟度模型:技术萌芽期、过热期、幻觉破灭谷底            区、复苏区、生产力成熟期
主要特性
关于NoSQL• NoSQL Databases and Polyglot Persistence  (多模式/混合式的持久化)• NoSQL and BigData• NoSQL and Not Only SQL
多种数据模型• Key-Value• Graph• Document (JSON...)• Column Family, 多维哈希表, 稀疏表
Column Family•   类比RDBMS中的表•   存储⼀一系列的列    •   每个列是⼀一个三元组(名:值:时间戳)    •   不同的行的列不必相同•   列是有序的(有索引的)    •   可以取出⼀一列,或进行区间查询...
CAP原则⼀一致性、可用性与分区耐受性,三者只能取其二
Cassandra的可调⼀一致性•   数据存取API可以指定需要的⼀一致性    •   CL.ZERO    •   CL.ANY    •   CL.ONE    •   CL.QUORUM    •   CL.ALL•   W+R>N ...
操作接口• Cassandra API • Thrift API • Clients: Hector, PYCASSA...• CQL
Benchmarks• YCSB  • http://nosql.mypopescu.com/post/    3163240962/ycsb-benchmark-results-for-    cassandra-hbase-mongodb•...
主要适用场景• 需要高性能(尤其是写入性能)、随时 可用、结构化、海量数据的场景• 时间线• 消息• 广告跟踪• ……
日常运维•   Node repair    •   gc_grace_seconds    •   避免多节点同时repair•   增加节点    •   划分token range, 指定seed node    •   均衡数据    ...
相关工具
各种客户端• Java: Hector, Astyanax by Netflix• Scala: Cassie by Twitter• Python: Pycassa...• Ruby: cassandra by Twitter• ...
OpsCenter by DataStax
Priam by Netflix• 每个节点上运行的辅助工具,用于: • Backup and recovery (to S3) • Bootstrapping and automated token    assignment. • Centr...
核心技术
DHT• Dynamo by Amazon• 结构化P2P, ⼀一致性哈希• Gossip• 读时修复• Anti-Entropy, Merkle Tree
写入路径• Commit Log• MemTable• SSTable
Bloom Filter• Bloom Filter vs. Hash• 出发点:磁盘访问是代价高昂的• 假阳性
参考• 官方主页: http://cassandra.apache.org/• Datastax: http://www.datastax.com/• 《Cassandra权威指南》: http://  www.ituring.com.cn/b...
Q &A 谢谢
Upcoming SlideShare
Loading in …5
×

Cassandra Technical and history overview

1,598 views
1,339 views

Published on

jie's

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,598
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
28
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Cassandra Technical and history overview

  1. 1. 站在Digg的尸体上谈谈Cassandra 盛大云计算 王旭
  2. 2. About Me• 码农 @ 盛大云计算 / 云硬盘 (EBS)• 前Hadoop Developer• 技术作者、译者《Cassandra权威指南》 (据说像机器翻译的)• http://wangxu.me/blog/• @gnawux
  3. 3. 大纲• Cassandra的成长历程• Cassandra的主要特性• Cassandra的相关工具• Cassandra的核心技术
  4. 4. Cassandra是谁• 希腊神话中的特洛伊公主• 太阳神阿波罗的爱慕与赠予• 悲剧的女先知• ……
  5. 5. 我们谈的Cassandra• 无中心的、高性能、可扩展的、分布式非关系型数据库• 出身名门: • Facebook开源的NoSQL数据库• 万千宠爱: • Twitter, Digg, Rackspace...• 飞来横祸 • Twitter, Digg, Facebook• 涅槃重生 • Twitter, Netflix, Rackspace, Reddit
  6. 6. John QuinnDigg的故事
  7. 7. Digg的未来http://about.digg.com/blog/looking-future-cassandra/
  8. 8. ⼀一年后…… http://techcrunch.com/2010/09/07 / digg-struggles-vp-engineering-door/
  9. 9. Digg员工如是说…… http://www.quora.com/Is-Cassandra-to-blame- for-Digg-v4s-technical-failures 但究竟Digg的Cassandra 遇到了什么问题?
  10. 10. Twitter in 2010 FRIDAY, JULY 9, 2010
  11. 11. Facebook in 2010
  12. 12. 为什么Cassandra不靠谱• Repair: 数据修复的可靠性 (CASSANDRA-1316)• Scale: 插入节点对集群的影响/负载均衡 (CASSANDRA-192)• Compaction: 对性能的影响• Memory (Key cache, OOM...)• Mature....
  13. 13. 今日Cassandra
  14. 14. Cassandra @ Twitter
  15. 15. Web Analytics of Twitter
  16. 16. SpiderDuck of Twitter
  17. 17. Rainbird of Twitter
  18. 18. Cassandra @ Netflix
  19. 19. Cassandra @ Netflix
  20. 20. 为什么Cassandra很酷• 无中心架构,Column Family数据模型• 很快,写操作更快• 性能线性扩展(ref: netflix, ycsb...)• Counter数据类型
  21. 21. Gartner的成熟度曲线Gartner的技术成熟度模型:技术萌芽期、过热期、幻觉破灭谷底 区、复苏区、生产力成熟期
  22. 22. 主要特性
  23. 23. 关于NoSQL• NoSQL Databases and Polyglot Persistence (多模式/混合式的持久化)• NoSQL and BigData• NoSQL and Not Only SQL
  24. 24. 多种数据模型• Key-Value• Graph• Document (JSON...)• Column Family, 多维哈希表, 稀疏表
  25. 25. Column Family• 类比RDBMS中的表• 存储⼀一系列的列 • 每个列是⼀一个三元组(名:值:时间戳) • 不同的行的列不必相同• 列是有序的(有索引的) • 可以取出⼀一列,或进行区间查询 • 常用场景:时间线、不同属性……• Super Column Family, Composite Column
  26. 26. CAP原则⼀一致性、可用性与分区耐受性,三者只能取其二
  27. 27. Cassandra的可调⼀一致性• 数据存取API可以指定需要的⼀一致性 • CL.ZERO • CL.ANY • CL.ONE • CL.QUORUM • CL.ALL• W+R>N 意味着强⼀一致性
  28. 28. 操作接口• Cassandra API • Thrift API • Clients: Hector, PYCASSA...• CQL
  29. 29. Benchmarks• YCSB • http://nosql.mypopescu.com/post/ 3163240962/ycsb-benchmark-results-for- cassandra-hbase-mongodb• Netflix’s benchmark • http://techblog.netflix.com/2011/11/ benchmarking-cassandra-scalability-on.html
  30. 30. 主要适用场景• 需要高性能(尤其是写入性能)、随时 可用、结构化、海量数据的场景• 时间线• 消息• 广告跟踪• ……
  31. 31. 日常运维• Node repair • gc_grace_seconds • 避免多节点同时repair• 增加节点 • 划分token range, 指定seed node • 均衡数据 • ⼀一种策略:成倍增加节点
  32. 32. 相关工具
  33. 33. 各种客户端• Java: Hector, Astyanax by Netflix• Scala: Cassie by Twitter• Python: Pycassa...• Ruby: cassandra by Twitter• ...
  34. 34. OpsCenter by DataStax
  35. 35. Priam by Netflix• 每个节点上运行的辅助工具,用于: • Backup and recovery (to S3) • Bootstrapping and automated token assignment. • Centralized configuration management • RESTful monitoring and metrics
  36. 36. 核心技术
  37. 37. DHT• Dynamo by Amazon• 结构化P2P, ⼀一致性哈希• Gossip• 读时修复• Anti-Entropy, Merkle Tree
  38. 38. 写入路径• Commit Log• MemTable• SSTable
  39. 39. Bloom Filter• Bloom Filter vs. Hash• 出发点:磁盘访问是代价高昂的• 假阳性
  40. 40. 参考• 官方主页: http://cassandra.apache.org/• Datastax: http://www.datastax.com/• 《Cassandra权威指南》: http:// www.ituring.com.cn/book/9
  41. 41. Q &A 谢谢

×