课程大纲 第一周:Hbase系统搭建与部署,Hbase shell操作 学习内容: 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的各项操作与性能优化方案,构建自己的实时查询系统
|