嘉宾介绍:郭泽晖,阿里云技术专家,HBase contributor,负责云HBase平台设计&开发。

过往记忆发布于2018/09/07

注脚

展开查看详情

1.云上HBase冷热分离实践 云HBase冷存储方案介绍 郭泽晖(索月) 2018.08 为了无法计算的价值

2.Content 01 典型据场景 02 传统⽅方案 03 云HBase 云端⽅方案 为了无法计算的价值

3.01 典型据场景 为了无法计算的价值

4.典型场景 • 只有少部分数据频繁访问 • 访问频次随时间流逝⽽而减少 • 归档备份 • …… 为了无法计算的价值

5.定义 热数据 冷数据 • 频繁访问 • 极少访问(平均每GB数据⽉月度访问不不超过10W) • 数据量量相对少 • 数据量量⼤大(TB级别) • 对延迟敏敏感 • 对成本敏敏感

6.02 传统⽅方案 为了无法计算的价值

7.传统⽅方案 1.X 优点 Client • 简单,⽆无需改动HBase代码 Replication CopyTable 缺点 clusterA …… clusterB Hot Table Cold Table • 双集群维护开销⼤大 • 冷集群CPU可能存在浪费 2.0版本已经⽀支持同集群冷热,参考: HBASE-14061

8.传统⽅方案 2.X Client 优点 clusterA • 同⼀一集群维护开销少 Hot Table Cold Table 缺点 HDFS DataNode DataNode DataNode • 需要根据业务考虑不不同介质磁盘配⽐比, 业务变动集群配置很难跟着变动 参考:HDFS ArchivalStorage

9.03 云HBase云端⽅方案 为了无法计算的价值

10.云HBase介绍 • 存储计算分离 • 完全弹性 • 多模式 • 免运维 欢迎使⽤用云HBase https://www.aliyun.com/product/hbase

11.基于OSS的HBase冷存储 HBase • 存储弹性伸缩 Hot Table Cold Table • 同集群管理理⽅方便便 Hadoop FileSystem API • OSS便便宜可靠 云盘

12.OSS对象存储 • 可以存⼤大对象,TB级 • 数据设计持久性不不低于99.999999999% • 低成本 阿⾥里里云对象存储服务(Object Storage Service,简称 OSS),是阿⾥里里云提供的海海量量、安全、低成本、⾼高可靠的云存储服务。

13.成本优势 ⾼高效云盘 VS OSS 1GB/⽉月 成本对⽐比 0.7 0.7 0.525 3.5倍 0.35 0.175 0.2 0 2副本云盘 OSS

14.成本优势 每⽉月成本对⽐比(元) 1500000 1,473,678 举例例 1125000 2.5倍 某汽⻋车企业,拥有10万量量⻋车。 每⻋车每30秒上传7K的包,数 750000 据半年年后基本不不访问。 596,488 我们以3年年的存储量量(⼤大约2P) 375000 来估算成本。 0 3年年成本(元)

15.基于OSS架设HBase的问题 直接基于 Hadoop社区 NativeOssFileSystem 架设HBase存在的问题 模拟⽂文件系统需要4个对象实际上 • 只能通过多个对象来模拟⽬目录结构 • 操作⽬目录/⽂文件实际上是分别操作多 1个对象,/ 不不是⽬目录 /root { 是对象名的⼀一部分 个对象 /root/parent • 类似rename这种操作,如果中途 /root/parent/son/file crash,会出现不不⼀一致,⽆无法保证原 /root/parent/son ⼦子性 • /root/parent/son/file

16.云HBase冷存架构 HBase 1.HLog依然放HDFS,为了了 写⼊入性能考虑,适应写多读 Hadoop FileSystem API 少场景 ApsaraDistributedFileSystem 2.冷表HFile在OSS DistributedFileSystem OssFileSystem 3.热表HFile在基于云盘的 HDFS OSS HDFS Hot table Cold table HLog HFile HFile

17.云HBase冷存架构 HDFS NameNode 元数据操作 OSS HBase DFSOutputStream Hot File Apsara DFSInputStream FileSystem ObjectA ObjectB OS SIn pu tSt OS r ea SO m utp utS tre a m Cold File reference oss://ObjectC ObjectC ……

18. 社区版本对⽐比 实现上⼀一些限制 社区NativeOssFileSystem写⼊入流程 • 请求是要钱的 • Hadopo FileSystem 是提供OutputStream 让⽤用户输⼊入 • OSS是提供 InputStream让⽤用户输 ⼊入 1.数据写⼊入需要落盘 2.依赖磁盘性能,pagecache等因素 3.写⼊入磁盘速度不不够快,异步发送线程池实际退化成单线程 4.crash时候可能需要清理理磁盘上的残留留⽂文件

19.社区版本对⽐比 云HBase的实现 • RingBuffer只会占据⼏几M内存,分成page维护 • 将⽣生产好的数据page包装成InputStream给OSS • 当发送超过128M时候截断InputStream提交⼀一次

20.社区版本对⽐比 架设在OSS之上HBase的单⾏行行写⼊入性能对⽐比 240,000 224,000 测试配置 208,000 HDFS 6台8核32G DataNode 192,000 176,000 HBase 1台8核32G RegionServer 160,000 HLog 均放在HDFS上 144,000 211393.4 193116.68 128,000 valueSize=100B 154163.57 161810.55 112,000 threads=120 96,000 80,000 TPS TPS SKIP WAL 云HBase 社区 测试命令参考:hbase pe --nomapred --valueSize=100 --rows=1000000 --table=test --presplit=64 randomWrite 120

21.使⽤用⽅方式 ⾮非常简单,仅需⼀一⾏行行命令! create 'test', {NAME => 'info'}, CONFIGURATION => {'HFILE_STORAGE_POLICY'=>'COLD'}

22.冷存储建议使⽤用场景 使⽤用限制 • 写多读少 1.如果持续Get,冷存储读IOPS会有限制(30左右) • 顺序读 2.偶尔访问,IOPS限制会适当动态放宽 
 2.顺序读写流量量不不限制

23.冷存与云盘性能对⽐比 基于⾼高效云盘的热表与基于OSS的冷表单⾏行行写⼊入性能测试 240,000 226,000 测试配置 212,000 HDFS 6台8核32G DataNode 198,000 184,000 HBase 1台8核32G RegionServer 170,000 219569.1 156,000 211393.4 每台ECS挂载4块300G⾼高效云盘 193116.68 192819.72 142,000 valueSize=100B 128,000 114,000 threads=120 100,000 TPS TPS SKIP WAL 冷表 热表 测试命令参考:hbase pe --nomapred --valueSize=100 --rows=1000000 --table=test --presplit=64 randomWrite 120

24.其他特性:企业级安全 • 安全⽩白名单:机器器防⽕火墙 • VPC:⽹网络隔离 • 认证: • User/Password、授权ACL • 跟MySQL体验⼀一致 • 授权 • 可以授权到表及列列族

25.其他特性:双活 • 满⾜足 集群级别的容灾 • 备集群 可以满⾜足 分析的需求 • 异步同步,最终⼀一致性 • 延迟 200ms以内

26.云HBase VS ⾃自建HBase

27.We are hiring! • 如果你对Hadoop⽣生态系统,或者任何 NO-SQL数据库感兴趣 • 如果你对建⽴立云上⼤大数据⽣生态感兴趣 • 如果你对挑战⾼高并发,低延迟感兴趣 HBase官⽅方中⽂文社区:http://hbase.group/ 云HBase: https://www.aliyun.com/product/hbase

28.