290 likes | 621 Views
分布式文件存储介绍. 及存储性能分析. 硬盘概念. 柱面 , 磁道 扇区 碟片 , 磁头. 硬盘特性. 容量 10M~2T Rpm 读写 iops 磁盘缓存 2M~64M 接口 :ATA(sata), SCSI(sas), 光纤. 与其他设备比较. 内存 , 1M->0.25ms 网络 , 1M->10ms 硬盘寻道 , 10ms/ 次 硬盘读写 ,1M->11ms. 硬盘损坏. 10 万小时 ~100 万小时. RAID10. RAID5,6. RAID5,RAID6,RAID10. RAID 性能. 损坏后恢复速度慢. 文件系统.
E N D
分布式文件存储介绍 及存储性能分析
硬盘概念 • 柱面,磁道 • 扇区 • 碟片,磁头
硬盘特性 • 容量 10M~2T • Rpm • 读写iops • 磁盘缓存2M~64M • 接口:ATA(sata), SCSI(sas),光纤
与其他设备比较 • 内存, 1M->0.25ms • 网络, 1M->10ms • 硬盘寻道, 10ms/次 • 硬盘读写,1M->11ms
硬盘损坏 • 10万小时~100万小时
RAID5,6 • RAID5,RAID6,RAID10
RAID性能 • 损坏后恢复速度慢
文件系统 • 元数据概念 • Inode,不包括文件名(64B) • 数据块,目录块,块列表块 • 预读机制, buffer/cache
专有存储 • 10T的存储容量需要几百万
GFS特点 • 廉价 • 扩展方便/自动平衡 • No-Raid • 善于大文件 • 硬盘故障常态化
GFS关键词 • 块Chunk • 副本数 • Master节点 • Chunkserver节点
GFS的徒子徒孙 • Moosefs,c,通用,成熟高,支持小文件 • Kfs,c++,有api接口,目前版本低,bug多 • Hdfs,java
Facebook存储 • RAID6+12T+XFS • 定期生成索引文件 • 单一大文件,仅仅追加 • 重新捆扎
淘宝tfs • Tfs,专有,无目录,ext4,单进程单磁盘,小文件合并,无cache,mysql辅助,无大文件概念 • Tfs2.0,大文件分片存储,块设备,SSD/SAS/SATA分级存储.小的进SSD,中的放SAS,大的存SATA
其他国内系统 • Fasdtfs,专有,无中心点,实体文件,服务器卷,单进程单磁盘. • Leofs,商业,通用,双master,data进程内核进行,实体文件,最近才小文件合并
MooseFS示例 • 安装,configure –prefix=/data && make • 配置, • 运行 • Master节点, mfsmaster start • Chunserver节点,chunkserver start • Mount节点,mfsmount –H mfsmaster • 监控, python sbin/mfscgiserv • 使用,象普通目录文件一样操作
未来的系统 • Ceph,对象级,进入2.34内核 • Lustre,对象级 • Gfs2,未知
性能问题-软件 • Mount, 参数-o noatime • Ext4,xfs,自己的系统 • 单线程单磁盘模式 • 数据合并 • App-cache,cache的5分钟原则 • 异步及O_DIRECT? • 随机写转顺序写 • 随机读怎么办?
性能问题-SSD • 价格 • 价格:15元/g vs 0.7元/g • 性能 • 随机IOPS: 18 vs 1 • 顺序IOPS: 2 vs 1 • 故障高(据传) • 权衡选择, 2011年百度MySQL全面使用SSD