SlideShare a Scribd company logo
1 of 27
浅析分布式存储架构—设计自
    己的存储

   技术中心·架构部
      徐振华
    2012-02-06
内容概要




       • 分布式存储架构介绍和现状
       • 需要那些基础知识
         高并发服务端架构
         常用存储架构比较
       • 如何设计分布式存储的架构
         分析需求,做好平衡
         如何做到RAS(可靠,可用,可扩展);
         利用硬件,分级存储
介绍和现状




                                介绍

  • 重点 : 架构
  • 理论 : CAP : Consistency Availability Partition tolerance 只能满足其二
         BASE :Basically Available(基本可用)Soft state(柔性状态)
         Eventually consistent(最终一致)
         ACID (原子性 一致性 隔离性 持久性)
         I/O五分钟法则
        Amdahl定律和Gustafson定律 , 摩尔定律
介绍和现状




                                现状

  •   2011年,Amazon S3服务增加了5000亿份存储对象和文件
         技术: SimpleDB , Dynamo

  • 目前全球累计已经有超过1400亿张照片发布在Facebook网站上
    每天平均有超过2.5亿张照片上传至Facebook
    Facebook目前存储的照片和视频数据量超过100PB(1PB=1024TB)
     HBase每月存储1350亿条信息
        技术: Facebook图片存储系统 HayStack, cassandra,hbase

  •   2008年 google谷歌网页索引数量突破1万亿
         技术: Google Megastore , GFS, bigtable
基础知识




             基础知识


  •   数据结构
  •   网络
  •   集群
  •   操作系统
  •   存储领域
  •   其它领域
基础知识


 网络


 服务器模型
 s:1 , c:1 , bio; 一个请求一个线程
 s:1 , c:n , nio ;多个请求,一个线程分发
 seda :Staged Event-Driven Architecture
  Select (轮询) 和 epoll (事件驱动 callback);

 C10K问题,C500K,C**K

 本质
 方法: I/O模型 职责划分 内核和协议栈优化
 目标 :尽量少占用CPU ,提高资源利用率
     DRM的目标一致

 常用网络库
 Netty , Mina, libevent,libev, ACE,ASIO
分布式存储架构



          各种IO模型
基础知识




 数据结构
 主要存储模型
 Consistent hash, (去中心化 )


 B+ tree , (实时,随机)


 LSM tree, (批量 顺序)



 其它
 Bitmap (bloom filter 缓存命中) Dynamo,hbase
 Merkle Tree (一致性) Dynamo
 Skip List ( 跳表 lsm变形) leveldb
 prio_tree (优先搜索树 mmap) mognodb
分布式存储架构



          consistent hash
分布式存储架构



          B+ tree
分布式存储架构



          cassandra 数据存储过程
分布式存储架构



          Lsm tree
分布式存储架构



          Merkle Tree
基础知识




 集群
 1 无主 ;Master_slave ; P2P(全主)

 操作系统
 进程调度 内存管理 文件管理:

 存储领域
 存储硬件
 事务和锁( MVCC 二段提交 三段提交 ,paxos)
 常用数字 扇区 512, 内存页4k , 磁盘块大小 4k mtu 1500


 其它领域
 人工智能 : k_means
基础知识




                            基础知识应用


  • Dynamo 数据同步 , BT下载
       Merkle Tree
  • memcached
        linux 内存管理 + libevent + (consisten hash )
分布式存储架构



          linux vfs体系
如何设计




                   如何设计架构


  •   分析需求,做好平衡
  •   使用Kiss原则 , 做到RAS
  •   设计和充分利用硬件,分级存储
  •   实践
如何设计




                分析需求,做好平衡
 1 分析需求
     数据结构 文件 table , object
     数据特点 容量大小
     访问模式 读写比例,实时读写,顺序读写
     实时性

 2 平衡

   1 CAP理论 , BASE理论/ACID
   2 选择存储模型 B+ or LSM
   资源利用率和管理 高吞吐和低延迟 随机与顺序 规模与实时 B+ or LSM

 3 实践
    Mongodb选择
如何设计




                         原则和目标
 原则: kiss
         unix 设计哲学


 目标: RAS
 RAS: Reliability, Availability, Scalability 高可靠,高可用,高扩展

 R:过载控制 : Qos, (随机早期检测)
 A: 容灾 多副本 (同机柜,机房,数据中心)
 S 扩容  分片 : a 取模 b 一致性hash c B+ tree 或变种
如何设计




            利用硬件,分级存储
 数据中心
 Facebook开源服务器、数据中心,将开源存储方案,

 分级存储
   网络延迟 局部性原理  cdn
   按对象访问热点进行迁移:
     最热的进SSD,中等热度的放SAS,轻热度的存SATA

 展望
 硬件分离, 你的CPU在一台服务器上,而内存在另外一台服务器,网卡可能
 在第三台服务器上
分布式存储架构



          facebook数据中心电力布局
分布式存储架构



          淘宝cdn分级
分布式存储架构



          数据分布
分布式存储架构



          实践1: Google Megastore
分布式存储架构



          实践2: Facebook Haystack图片存储架构
QQ :254181919
msn : google_fans@hotmail.com
homesite : http://www.zhuozhe.net




                    Q&A
谢谢

More Related Content

What's hot

新浪微博Feed服务架构
新浪微博Feed服务架构新浪微博Feed服务架构
新浪微博Feed服务架构XiaoJun Hong
 
Feed服务架构-新浪微博新员工培训议题
Feed服务架构-新浪微博新员工培训议题Feed服务架构-新浪微博新员工培训议题
Feed服务架构-新浪微博新员工培训议题XiaoJun Hong
 
高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践孙立
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践Wensong Zhang
 
Ocean base海量结构化数据存储系统 hadoop in china
Ocean base海量结构化数据存储系统 hadoop in chinaOcean base海量结构化数据存储系统 hadoop in china
Ocean base海量结构化数据存储系统 hadoop in chinaknuthocean
 
网站存储经验谈pdf
网站存储经验谈pdf网站存储经验谈pdf
网站存储经验谈pdfYu Lin
 
美团技术沙龙04 - Kv Tair best practise
美团技术沙龙04 - Kv Tair best practise 美团技术沙龙04 - Kv Tair best practise
美团技术沙龙04 - Kv Tair best practise 美团点评技术团队
 
NoSQL误用和常见陷阱分析
NoSQL误用和常见陷阱分析NoSQL误用和常见陷阱分析
NoSQL误用和常见陷阱分析iammutex
 
OTN软硬件结合数据库解决方案
OTN软硬件结合数据库解决方案OTN软硬件结合数据库解决方案
OTN软硬件结合数据库解决方案freezr
 
Exadata那点事
Exadata那点事Exadata那点事
Exadata那点事freezr
 
淘宝商品库MySQL优化实践
淘宝商品库MySQL优化实践淘宝商品库MySQL优化实践
淘宝商品库MySQL优化实践Feng Yu
 
Flash存储设备在淘宝的应用实践
Flash存储设备在淘宝的应用实践Flash存储设备在淘宝的应用实践
Flash存储设备在淘宝的应用实践Feng Yu
 
Ceph bluestore-tiering-2018-11-15
Ceph bluestore-tiering-2018-11-15Ceph bluestore-tiering-2018-11-15
Ceph bluestore-tiering-2018-11-15Jiaying Ren
 
大型系统的缓存标准化之路—从主从多级重client到一体化
大型系统的缓存标准化之路—从主从多级重client到一体化大型系统的缓存标准化之路—从主从多级重client到一体化
大型系统的缓存标准化之路—从主从多级重client到一体化XiaoJun Hong
 
Ocean base 千亿级海量数据库-日照
Ocean base 千亿级海量数据库-日照Ocean base 千亿级海量数据库-日照
Ocean base 千亿级海量数据库-日照Shaoning Pan
 
美团点评技术沙龙010-点评RDS系统介绍
美团点评技术沙龙010-点评RDS系统介绍美团点评技术沙龙010-点评RDS系统介绍
美团点评技术沙龙010-点评RDS系统介绍美团点评技术团队
 
罗李:构建一个跨机房的Hadoop集群
罗李:构建一个跨机房的Hadoop集群罗李:构建一个跨机房的Hadoop集群
罗李:构建一个跨机房的Hadoop集群hdhappy001
 
Hdfs原理及实现
Hdfs原理及实现Hdfs原理及实现
Hdfs原理及实现baggioss
 

What's hot (20)

新浪微博Feed服务架构
新浪微博Feed服务架构新浪微博Feed服务架构
新浪微博Feed服务架构
 
Feed服务架构-新浪微博新员工培训议题
Feed服务架构-新浪微博新员工培训议题Feed服务架构-新浪微博新员工培训议题
Feed服务架构-新浪微博新员工培训议题
 
高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践
 
Ocean base海量结构化数据存储系统 hadoop in china
Ocean base海量结构化数据存储系统 hadoop in chinaOcean base海量结构化数据存储系统 hadoop in china
Ocean base海量结构化数据存储系统 hadoop in china
 
Hdfs
HdfsHdfs
Hdfs
 
Hdfs
HdfsHdfs
Hdfs
 
网站存储经验谈pdf
网站存储经验谈pdf网站存储经验谈pdf
网站存储经验谈pdf
 
美团技术沙龙04 - Kv Tair best practise
美团技术沙龙04 - Kv Tair best practise 美团技术沙龙04 - Kv Tair best practise
美团技术沙龙04 - Kv Tair best practise
 
NoSQL误用和常见陷阱分析
NoSQL误用和常见陷阱分析NoSQL误用和常见陷阱分析
NoSQL误用和常见陷阱分析
 
OTN软硬件结合数据库解决方案
OTN软硬件结合数据库解决方案OTN软硬件结合数据库解决方案
OTN软硬件结合数据库解决方案
 
Exadata那点事
Exadata那点事Exadata那点事
Exadata那点事
 
淘宝商品库MySQL优化实践
淘宝商品库MySQL优化实践淘宝商品库MySQL优化实践
淘宝商品库MySQL优化实践
 
Flash存储设备在淘宝的应用实践
Flash存储设备在淘宝的应用实践Flash存储设备在淘宝的应用实践
Flash存储设备在淘宝的应用实践
 
Ceph bluestore-tiering-2018-11-15
Ceph bluestore-tiering-2018-11-15Ceph bluestore-tiering-2018-11-15
Ceph bluestore-tiering-2018-11-15
 
大型系统的缓存标准化之路—从主从多级重client到一体化
大型系统的缓存标准化之路—从主从多级重client到一体化大型系统的缓存标准化之路—从主从多级重client到一体化
大型系统的缓存标准化之路—从主从多级重client到一体化
 
Ocean base 千亿级海量数据库-日照
Ocean base 千亿级海量数据库-日照Ocean base 千亿级海量数据库-日照
Ocean base 千亿级海量数据库-日照
 
美团点评技术沙龙010-点评RDS系统介绍
美团点评技术沙龙010-点评RDS系统介绍美团点评技术沙龙010-点评RDS系统介绍
美团点评技术沙龙010-点评RDS系统介绍
 
罗李:构建一个跨机房的Hadoop集群
罗李:构建一个跨机房的Hadoop集群罗李:构建一个跨机房的Hadoop集群
罗李:构建一个跨机房的Hadoop集群
 
Hdfs原理及实现
Hdfs原理及实现Hdfs原理及实现
Hdfs原理及实现
 

Viewers also liked

BEET MAKERS Brand dev
BEET MAKERS Brand devBEET MAKERS Brand dev
BEET MAKERS Brand devrichiejohnson
 
The Integrated Studies Program
The Integrated Studies ProgramThe Integrated Studies Program
The Integrated Studies Programmritzius
 
תולדות המחשב
תולדות המחשבתולדות המחשב
תולדות המחשבVeliky Arieh
 
Legally Correct But Technologically Off the Mark - The Case of Arie Genger
Legally Correct But Technologically Off the Mark - The Case of Arie GengerLegally Correct But Technologically Off the Mark - The Case of Arie Genger
Legally Correct But Technologically Off the Mark - The Case of Arie GengerMark Hyde
 
intro Informatici Senza Frontiere @Unicam
intro Informatici Senza Frontiere @Unicamintro Informatici Senza Frontiere @Unicam
intro Informatici Senza Frontiere @UnicamFabrizio Ippoliti
 
Cindy Kelly PIDP 3104 Informal Assessment
Cindy Kelly PIDP 3104 Informal Assessment Cindy Kelly PIDP 3104 Informal Assessment
Cindy Kelly PIDP 3104 Informal Assessment b1cusp1d1
 
Photoshop designs presentation
Photoshop designs presentationPhotoshop designs presentation
Photoshop designs presentationJames Green
 
Psychological foundations
Psychological foundationsPsychological foundations
Psychological foundationsVeliky Arieh
 

Viewers also liked (10)

BEET MAKERS Brand dev
BEET MAKERS Brand devBEET MAKERS Brand dev
BEET MAKERS Brand dev
 
NJPSA12
NJPSA12NJPSA12
NJPSA12
 
The Integrated Studies Program
The Integrated Studies ProgramThe Integrated Studies Program
The Integrated Studies Program
 
תולדות המחשב
תולדות המחשבתולדות המחשב
תולדות המחשב
 
Legally Correct But Technologically Off the Mark - The Case of Arie Genger
Legally Correct But Technologically Off the Mark - The Case of Arie GengerLegally Correct But Technologically Off the Mark - The Case of Arie Genger
Legally Correct But Technologically Off the Mark - The Case of Arie Genger
 
Content sections zabavushka_2_fin
Content sections zabavushka_2_finContent sections zabavushka_2_fin
Content sections zabavushka_2_fin
 
intro Informatici Senza Frontiere @Unicam
intro Informatici Senza Frontiere @Unicamintro Informatici Senza Frontiere @Unicam
intro Informatici Senza Frontiere @Unicam
 
Cindy Kelly PIDP 3104 Informal Assessment
Cindy Kelly PIDP 3104 Informal Assessment Cindy Kelly PIDP 3104 Informal Assessment
Cindy Kelly PIDP 3104 Informal Assessment
 
Photoshop designs presentation
Photoshop designs presentationPhotoshop designs presentation
Photoshop designs presentation
 
Psychological foundations
Psychological foundationsPsychological foundations
Psychological foundations
 

Similar to 浅析分布式存储架构—设计自己的存储- 58同城徐振华

Accelerate Database as a Service(DBaaS) in Cloud era
Accelerate Database as a Service(DBaaS) in Cloud eraAccelerate Database as a Service(DBaaS) in Cloud era
Accelerate Database as a Service(DBaaS) in Cloud eraJunchi Zhang
 
数据库高可用架构
数据库高可用架构数据库高可用架构
数据库高可用架构freezr
 
大规模网站架构
大规模网站架构大规模网站架构
大规模网站架构drewz lin
 
20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索
20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索
20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索liu sheng
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲84zhu
 
美团点评技术沙龙14:美团云对象存储系统
美团点评技术沙龙14:美团云对象存储系统美团点评技术沙龙14:美团云对象存储系统
美团点评技术沙龙14:美团云对象存储系统美团点评技术团队
 
Pegasus: Designing a Distributed Key Value System (Arch summit beijing-2016)
Pegasus: Designing a Distributed Key Value System (Arch summit beijing-2016)Pegasus: Designing a Distributed Key Value System (Arch summit beijing-2016)
Pegasus: Designing a Distributed Key Value System (Arch summit beijing-2016)涛 吴
 
分布式缓存与队列
分布式缓存与队列分布式缓存与队列
分布式缓存与队列XiaoJun Hong
 
大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011Yiwei Ma
 
利用统一存储获得无与伦比的速度,简化系统,并节省更多
利用统一存储获得无与伦比的速度,简化系统,并节省更多利用统一存储获得无与伦比的速度,简化系统,并节省更多
利用统一存储获得无与伦比的速度,简化系统,并节省更多ITband
 
Hadoop con 2015 hadoop enables enterprise data lake
Hadoop con 2015   hadoop enables enterprise data lakeHadoop con 2015   hadoop enables enterprise data lake
Hadoop con 2015 hadoop enables enterprise data lakeJames Chen
 
美团技术沙龙04 美团下一代分布式存储系统
美团技术沙龙04   美团下一代分布式存储系统美团技术沙龙04   美团下一代分布式存储系统
美团技术沙龙04 美团下一代分布式存储系统美团点评技术团队
 
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...acelyc1112009
 
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao ZhangBuilding the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao ZhangCeph Community
 
众行业公司系统架构案例介绍
众行业公司系统架构案例介绍众行业公司系统架构案例介绍
众行业公司系统架构案例介绍mysqlops
 
华为软件定义存储架构分析
华为软件定义存储架构分析华为软件定义存储架构分析
华为软件定义存储架构分析Liang Ming
 
RockStor - A Cloud Object System based on Hadoop
RockStor -  A Cloud Object System based on HadoopRockStor -  A Cloud Object System based on Hadoop
RockStor - A Cloud Object System based on HadoopSchubert Zhang
 
OpenStack Resource Scheduling
OpenStack Resource SchedulingOpenStack Resource Scheduling
OpenStack Resource SchedulingGuangya Liu
 

Similar to 浅析分布式存储架构—设计自己的存储- 58同城徐振华 (20)

Accelerate Database as a Service(DBaaS) in Cloud era
Accelerate Database as a Service(DBaaS) in Cloud eraAccelerate Database as a Service(DBaaS) in Cloud era
Accelerate Database as a Service(DBaaS) in Cloud era
 
数据库高可用架构
数据库高可用架构数据库高可用架构
数据库高可用架构
 
大规模网站架构
大规模网站架构大规模网站架构
大规模网站架构
 
内存数据库[1]
内存数据库[1]内存数据库[1]
内存数据库[1]
 
20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索
20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索
20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲
 
美团点评技术沙龙14:美团云对象存储系统
美团点评技术沙龙14:美团云对象存储系统美团点评技术沙龙14:美团云对象存储系统
美团点评技术沙龙14:美团云对象存储系统
 
Pegasus: Designing a Distributed Key Value System (Arch summit beijing-2016)
Pegasus: Designing a Distributed Key Value System (Arch summit beijing-2016)Pegasus: Designing a Distributed Key Value System (Arch summit beijing-2016)
Pegasus: Designing a Distributed Key Value System (Arch summit beijing-2016)
 
分布式缓存与队列
分布式缓存与队列分布式缓存与队列
分布式缓存与队列
 
大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011
 
利用统一存储获得无与伦比的速度,简化系统,并节省更多
利用统一存储获得无与伦比的速度,简化系统,并节省更多利用统一存储获得无与伦比的速度,简化系统,并节省更多
利用统一存储获得无与伦比的速度,简化系统,并节省更多
 
Hadoop con 2015 hadoop enables enterprise data lake
Hadoop con 2015   hadoop enables enterprise data lakeHadoop con 2015   hadoop enables enterprise data lake
Hadoop con 2015 hadoop enables enterprise data lake
 
美团技术沙龙04 美团下一代分布式存储系统
美团技术沙龙04   美团下一代分布式存储系统美团技术沙龙04   美团下一代分布式存储系统
美团技术沙龙04 美团下一代分布式存储系统
 
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
The Construction and Practice of Apache Pegasus in Offline and Online Scenari...
 
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao ZhangBuilding the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
Building the Production Ready EB level Storage Product from Ceph - Dongmao Zhang
 
Altibase介绍
Altibase介绍Altibase介绍
Altibase介绍
 
众行业公司系统架构案例介绍
众行业公司系统架构案例介绍众行业公司系统架构案例介绍
众行业公司系统架构案例介绍
 
华为软件定义存储架构分析
华为软件定义存储架构分析华为软件定义存储架构分析
华为软件定义存储架构分析
 
RockStor - A Cloud Object System based on Hadoop
RockStor -  A Cloud Object System based on HadoopRockStor -  A Cloud Object System based on Hadoop
RockStor - A Cloud Object System based on Hadoop
 
OpenStack Resource Scheduling
OpenStack Resource SchedulingOpenStack Resource Scheduling
OpenStack Resource Scheduling
 

浅析分布式存储架构—设计自己的存储- 58同城徐振华

  • 1. 浅析分布式存储架构—设计自 己的存储 技术中心·架构部 徐振华 2012-02-06
  • 2. 内容概要 • 分布式存储架构介绍和现状 • 需要那些基础知识 高并发服务端架构 常用存储架构比较 • 如何设计分布式存储的架构 分析需求,做好平衡 如何做到RAS(可靠,可用,可扩展); 利用硬件,分级存储
  • 3. 介绍和现状 介绍 • 重点 : 架构 • 理论 : CAP : Consistency Availability Partition tolerance 只能满足其二 BASE :Basically Available(基本可用)Soft state(柔性状态) Eventually consistent(最终一致) ACID (原子性 一致性 隔离性 持久性) I/O五分钟法则 Amdahl定律和Gustafson定律 , 摩尔定律
  • 4. 介绍和现状 现状 • 2011年,Amazon S3服务增加了5000亿份存储对象和文件 技术: SimpleDB , Dynamo • 目前全球累计已经有超过1400亿张照片发布在Facebook网站上 每天平均有超过2.5亿张照片上传至Facebook Facebook目前存储的照片和视频数据量超过100PB(1PB=1024TB) HBase每月存储1350亿条信息 技术: Facebook图片存储系统 HayStack, cassandra,hbase • 2008年 google谷歌网页索引数量突破1万亿 技术: Google Megastore , GFS, bigtable
  • 5. 基础知识 基础知识 • 数据结构 • 网络 • 集群 • 操作系统 • 存储领域 • 其它领域
  • 6. 基础知识 网络 服务器模型 s:1 , c:1 , bio; 一个请求一个线程 s:1 , c:n , nio ;多个请求,一个线程分发 seda :Staged Event-Driven Architecture Select (轮询) 和 epoll (事件驱动 callback); C10K问题,C500K,C**K 本质 方法: I/O模型 职责划分 内核和协议栈优化 目标 :尽量少占用CPU ,提高资源利用率 DRM的目标一致 常用网络库 Netty , Mina, libevent,libev, ACE,ASIO
  • 7. 分布式存储架构 各种IO模型
  • 8. 基础知识 数据结构 主要存储模型 Consistent hash, (去中心化 ) B+ tree , (实时,随机) LSM tree, (批量 顺序) 其它 Bitmap (bloom filter 缓存命中) Dynamo,hbase Merkle Tree (一致性) Dynamo Skip List ( 跳表 lsm变形) leveldb prio_tree (优先搜索树 mmap) mognodb
  • 9. 分布式存储架构 consistent hash
  • 11. 分布式存储架构 cassandra 数据存储过程
  • 13. 分布式存储架构 Merkle Tree
  • 14. 基础知识 集群 1 无主 ;Master_slave ; P2P(全主) 操作系统 进程调度 内存管理 文件管理: 存储领域 存储硬件 事务和锁( MVCC 二段提交 三段提交 ,paxos) 常用数字 扇区 512, 内存页4k , 磁盘块大小 4k mtu 1500 其它领域 人工智能 : k_means
  • 15. 基础知识 基础知识应用 • Dynamo 数据同步 , BT下载 Merkle Tree • memcached linux 内存管理 + libevent + (consisten hash )
  • 16. 分布式存储架构 linux vfs体系
  • 17. 如何设计 如何设计架构 • 分析需求,做好平衡 • 使用Kiss原则 , 做到RAS • 设计和充分利用硬件,分级存储 • 实践
  • 18. 如何设计 分析需求,做好平衡 1 分析需求 数据结构 文件 table , object 数据特点 容量大小 访问模式 读写比例,实时读写,顺序读写 实时性 2 平衡 1 CAP理论 , BASE理论/ACID 2 选择存储模型 B+ or LSM 资源利用率和管理 高吞吐和低延迟 随机与顺序 规模与实时 B+ or LSM 3 实践 Mongodb选择
  • 19. 如何设计 原则和目标 原则: kiss unix 设计哲学 目标: RAS RAS: Reliability, Availability, Scalability 高可靠,高可用,高扩展 R:过载控制 : Qos, (随机早期检测) A: 容灾 多副本 (同机柜,机房,数据中心) S 扩容  分片 : a 取模 b 一致性hash c B+ tree 或变种
  • 20. 如何设计 利用硬件,分级存储 数据中心 Facebook开源服务器、数据中心,将开源存储方案, 分级存储 网络延迟 局部性原理  cdn 按对象访问热点进行迁移: 最热的进SSD,中等热度的放SAS,轻热度的存SATA 展望 硬件分离, 你的CPU在一台服务器上,而内存在另外一台服务器,网卡可能 在第三台服务器上
  • 21. 分布式存储架构 facebook数据中心电力布局
  • 22. 分布式存储架构 淘宝cdn分级
  • 23. 分布式存储架构 数据分布
  • 24. 分布式存储架构 实践1: Google Megastore
  • 25. 分布式存储架构 实践2: Facebook Haystack图片存储架构
  • 26. QQ :254181919 msn : google_fans@hotmail.com homesite : http://www.zhuozhe.net Q&A