Weitere ähnliche Inhalte
Ähnlich wie Track1dongsiying4 (20)
Track1dongsiying4
- 2. Facebook对HDFS及Hbase的使用
数据仓储 实时随机读写 实时
连续
Web Workflow 读写
语言
工具
Job Scheduling Hive Facebook
Tool Shell 消息
Hive … 监控工具 PUMA …
Peregrine MapReduce … HBase Scribe …
HDFS
- 5. HDFS广泛的新需求和新挑战
数据仓 HBas Scribe 数据备份和
储 e 恢复
NameNode 不停机升级 高 高 中 低
NameNode自动故障转移 中 高 中 低
文件数量多 高 低 低 高
数据容量大 高 低 低 低
文件客户端永久存在 低 高 高 低
大量随机读 低 高 低 低
节省存储空间 高 中 低 中
减少高延迟读写 低 高 中 低
DataNode存储大量Block 高 低 低 中
隔离不同应用 中 低 低 低
远程客户端 中 低 中 低
- 8. NameNode Scalability – Federation (2)
在不同NameNode之间移动文件?FastCopy!
Hive表格
NN1 NN2
File1 File2
Block1 Block1’ Block2 Block2’
硬链接 硬链接
Disk Disk
File1 File2
DN1 DN2
- 10. NameNode不停机升级
Client Primary Last Transaction ID
Zookeeper
Host2
Host1 id
副NameNode
主NameNode Transaction Logs (Host2)
(Host1)
Blocks
DataNodes (Data)
- 13. 节省存储空间——―RAID‖
Reed Solomon校正码
容忍2个丢失的备份,需要3倍空间
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
容忍4个丢失的备份,需要1.4倍空间
1 2 3 4 5 6 7 8 9 10
Source blocks
P1 P2 P3 P4 Parity blocks
- 19. Hbase的层次存储
应用程序缓存 应用程序管理
HBase HBlock缓存 Hbase管理
操作系统的HDFS文件缓存
操作系统管理的
HDFS数据文件
在磁盘上的HDFS文件
- 21. 数据编码
• more KVs per block in cache
• on-disk savings too
• seeking done on encoded format
• pluggable framework
KV1,KV2,KV3,KV4 KV5,KV6,KV7,KV8 KV1,KV2,KV3,KV4, KV9,KV10,KV11,KV1
Block Cache
KV5,KV6,KV7,KV8. 2,
KV13,KV14,KV15,KV
16
1.1x – 5x savings
Uncompressed, But Encoded Blocks
Uncompressed Blocks
DataBlockEncoding
e.g. PrefixCompression,
Fast_Diff, etc.
File1 File2
File1 File2
On Disk
1.1x – 2x savings
Encoded + Compressed HFiles
Compressed HFiles
- 22. 针对Hbase的数据块放置算法
Region #1 Blocks Pros:
Region #2 Blocks • locality-aware ―region‖ load-balancing/failover
• avoids network spikes on server failures
Region #3 Blocks • facilitates ―smooth‖ cluster expansion
1
1 1
1 1 1 1 1 1 1 1 1
2
2 2
2 2 2 2 2 2 2 2 2 2
3
3 3
3 3
3 3 3 3 3 3 3 3
4 4 4
4 4 4 4 4 4 4 4
1 1 1 1
2 2 2 2
3 3 3 3 3
4 4 4 4
1 1 1 1
2 2 2
3 3 3
4 4 4 4 4
- 23. 其他改进简述
• 可靠性
• 重写Master故障转移代码
• 加速region重新分配
• RPC优化
• 批量删除优化
• Per-request profiling
• 客户端优化