资源介绍
课程大纲
学习内容:
Hbase系统搭建与部署,Hbase shell操作;
客户端API操作,包括put、get、delete方法以及批量处理操作与客户端缓存,HTable类与Bytes类的使用;
比较过滤器、专用过滤器、附加过滤器、自定义过滤器的使用
计数器的使用,协处理器(coprocessor类、regionobserver类、masterobserver类、endpoint)的使用
HTablePool类的使用
实战:搭建Hbase集群;使用Hbase shell进行表的操作;利用Hbase API编写客户端工具操作Hbase集群
收获内容:
熟练掌握Hbase集群的搭建,能够利用Hbase shell对数据进行操作与查询;
熟练使用客户端API,了解过滤器、计数器、协处理器以及HTablePool的使用
第二周:客户端API的管理功能、MapReduce系统集成
学习内容:
利用HbaseAdmin类进行Hbase表的管理,包括表、属性、列的操作;
MapReduce集成,编写Mapreduce程序实现对HBase表的select,多表join,聚合操作,sort等功能
实战:通过利用Mapreduce实现数据的查询、聚合、连接等操作
收获内容:
掌握基于Hbase的Mapreduce程序编写,实现对表的操作
第三周:HBase系统架构原理
主要介绍:
Hbase中数据的查找与传输,数据结构B+树、LSM树介绍;
数据存储格式HFile格式、KeyValue格式;
WAL机制,HLog类、HLogKey类、WALEdit类、LogSyncer类、回放与持久性;
region、-root-表的查找;
LogEdit的生命周期与内部机制;
Coprocessor实现;
二级索引HIndex原理
实战:自定义Coprocessor的实现;HIndex的使用
收获内容:
了解WAL机制
Coprocessor的内部实现
二级索引HIndex的实现原理
第四周:HBase高级用法
主要介绍:
Hbase表的行键设计,高表与宽表、部分键扫描、分页、时间序列、时间顺序关系;
高级模式;
辅助索引;
搜索集成;
事务;
BloomFilter布隆过滤器;
隐式版本控制与自定义版本控制
实战:Hbase表的行健设计
收获内容:
Hbase的高级用法,Hbase行健设计的一般方法与各自的特点
第五周:HBase系统集成与案例实战
主要介绍:
利用hbase、Solr和Solr-IndexBuilder,设计与实现一个在线Hbase数据存储与实时查询系统,构建基于Hbase的SQL查询系统
实战:设计与开发一套数据存储与实时查询系统
收获内容:
从系统设计、开发、集成的角度,掌握Hbase的各项操作与性能优化方案,构建自己的实时查询系统