浅墨散人 浅墨散人
  • 基础
  • 设计模式
  • JVM
  • Maven
  • SpringBoot
  • 基础
  • Flask
  • Diango
  • Pandas
  • SqlAlchemy
  • Sqoop
  • Flume
  • Flink
  • Hadoop
  • Hbase
  • Hive
  • Kafka
  • Kylin
  • Zookeeper
  • Tez
  • MySQL
  • Doris
  • Chrome
  • Eclipse
  • IDEA
  • iTerm2
  • Markdown
  • SublimeText
  • VirtualBox
  • WebStrom
  • Linux
  • Mac
  • Hexo
  • Git
  • Vue
  • VuePress
  • 区块链
  • 金融
数据仓库
数据治理
读书笔记
关于我
GitHub (opens new window)
  • 基础
  • 设计模式
  • JVM
  • Maven
  • SpringBoot
  • 基础
  • Flask
  • Diango
  • Pandas
  • SqlAlchemy
  • Sqoop
  • Flume
  • Flink
  • Hadoop
  • Hbase
  • Hive
  • Kafka
  • Kylin
  • Zookeeper
  • Tez
  • MySQL
  • Doris
  • Chrome
  • Eclipse
  • IDEA
  • iTerm2
  • Markdown
  • SublimeText
  • VirtualBox
  • WebStrom
  • Linux
  • Mac
  • Hexo
  • Git
  • Vue
  • VuePress
  • 区块链
  • 金融
数据仓库
数据治理
读书笔记
关于我
GitHub (opens new window)
  • Kylin

    • Kylin
    • Kylin的cube构建
      • Cube的构建步骤
      • 全量构建和增量构建
        • 全量构建
        • 增量构建
    • Kylin的cube优化
  • BigData
  • Kylin
2021-06-19
目录

Kylin的cube构建

# Cube的构建步骤

  1. 创建Hive中间表

  2. 计算各维度的不同值,并收集各Cuboid的统计数据

  3. 创建并保存字典

  4. 保存Cuboid统计信息

  5. 创建HTable

  6. 计算Cube(一轮或若干轮MapReduce):真正的Cube计算

  7. 将Cube的计算结果转成HFile:将这些结果转换成HFile(HBase文件存储格式)

  8. 加载HFile到HBase:通过使用HBase BulkLoad工具将HFile导入到HBase集群,这一步完成后,HTable就可以查询到数据了。

  9. 更新Cube元数据:将此次构建的Segment的状态从"NEW"更新为"READY",表示表已经可供查询了。

  10. 垃圾回收

其中前5步都是为了构建Cube做的准备工作,第6步才是真正的构建Cube

# 全量构建和增量构建

# 全量构建

对数据模型(Model)中没有指定分割时间列信息的Cube,Kylin通常会采用全量构建,也就是每次构建时从Hive中读取全部数据来开始构建。

警告

注意:这里说的是在构建Model的时候,没有指定分割时间列的话,构建Cube就会采用全量的方式

# 增量构建

最后更新时间: 2022/7/23 10:17:11
Kylin
Kylin的cube优化

← Kylin Kylin的cube优化→

最近更新
01
分区分桶
08-21
02
数据模型(重要)
08-21
03
安装和编译
08-21
更多文章>
Theme by Vdoing
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式