会用 不考虑原理实现
会想
会玩
HBASE是啥,由哪些模块构成
HBASE优缺点及应用changj
与常用关系数据库对比
如何操作hbase(shell,java api)
高级特性:过滤器,协处理器,优化策略
hbase相关工具的使用(phoenix和sqoop)
对象存储服务实战:需求分析=>功能点梳理=>技术选型=>设计方案讨论=>选择方案代码实现
熟悉java编程基础,Linux
是否适合你?java工程师,希望通过hbase解决海量数据的业务需求
非常适合非结构化数据存储:
Bigtable是什么?
什么是面向列的数据库?
为什么适合非结构化数据?
并没有明确概念:结构化(二位表格)非结构化数据(图片,二进制)
hive不是实时查询,hbase实时查询重要工具
hbase和HDFS不同(提供随机读写)使用哈希表,并存储索引
适用场景:
1)瞬间写入量很大
2)数据需要长久保存,持续增长
3)不适用join,多级索引表关系复杂场景。
与关系型数据库区别:
cap定理:对于分布式计算系统,不可能同时满足三点:一致性(所有节点同一时间一致),可用性(都有响应),分区容错性
acid定理:数据库事务正确执行的四个要素
原子性:全部执行,或全部不执行
一致性:
隔离性:不交错执行
持久性:更改持久保存
hbase强一致性,支持单个行
namesapce理解为“数据库”
table:表明必须是能够用在文件路径的合法路径
row:行键并没有特别类型,二进制存储
clounm: family+qualifier
rowkey:不可更改
columnfamily:需要提前设置好,是column集合,一个family成员存储在一起,优化针对family
cell rowkey+colfam+qua+val
timeamp:默认返回最新数据
默认3副本
稀疏多维map