HBase学习

三范式

第一范式

属性不可分割。

第二范式

不存在部分函数依赖,减少数据的冗余。

第三范式

不存在传递函数依赖,减少数据的冗余,保证数据一致性。

事实表和维度表

维度

观察数据的角度,如用户,省份,商品等。

粒度

值的是特定的维度组合,如各个省份中各个SPU的GMV。
粒度越细,维度越多。最细粒度(所有的维度)。

维度表

一般是对事实的描述信息。每一张维度表对应现实世界中的一个对象或者概念。如:用户、商品、日期、地区等。

事实表

事实表中的每一行数据代表一个业务事件(下单、支付、退款、评价等)。“事实”这个术语表示的是业务事件的度量值(可统计次数、个数、金额等)。例如:订单事件中的下单金额。
事实表分为:

  1. 事务性事实表:只增。
  2. 周期性事实表:只关心最后的结果数据,增删改。
  3. 累积性事实表:关心业务过程,对应不止一条数据。
    事实表特点:“细长”,即列较少,行较多却行增速快。

一些概念

字典序

按位排序,如1后面接11而不是2。

高表:行多。

宽表:列多。

MYSQL中用,分割存储数据(CSV格式)。

数仓常用模型

星座模型(多张事实表)

星型模型&雪花模型

HBase数据模型

  1. Name Space
    两个自带的:
    HBase存内置表,default存用户默认表。
  2. Region 数据切片
    HBase定义表是只需要声明列族即可。
  3. Row
    HBase表中的每行数据都由一个Rowkey和多个Column(列)组成,数据是按照Rowkey的字典顺序村相互的,并且查询。
  4. Column
    HBase中每个列都由Column Family(列族)和Column Qualifier(列限定符)进行限定。建表时,只需要指定列族,而列限定符无需预先定义。
  5. Time Stamp
    用于标识数据的不同版本。
  6. Cell
    由{Rowkey,Column Family:Column Qualifier,Time Stamp}唯一确定的单元,cell中的数据是没有类型的,全部是字节码形式存贮。

HBase命令

bin/hbase shell可以进入

posted on   saihao  阅读(39)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程
点击右上角即可分享
微信分享提示