【问题标题】:Creating Star Schema (Dimensions and Fact Table) in Hadoop Hive from a single csv file从单个 csv 文件在 Hadoop Hive 中创建星型模式(维度和事实表)
【发布时间】:2020-07-11 14:32:59
【问题描述】:

我对 Datawarehouse、OLAP 和 hive 完全陌生。我确实有一个 csv 文件,其中包含有关 ebay 等在线市场的训练数据(请参阅列数据)。我的任务是在 hive 中创建一个星型模式(通过 Data Analytics Studio、Spark 或其他)。

我将维度搭建如下:

如何创建这些维度表,尤其是为每一行生成一个新 ID? 我的SELECT New_Guid(), listing_title, listing_subtitle, listing_type_code, start_price, buy_it_now_price, buy_it_now_listed_flag, qty_available_per_listing From auctions,我在另一个教程中找到的。但是New_Guid() 在我的 Data Analytics Studio 中根本不起作用。

非常感谢!

【问题讨论】:

标签: hadoop hive data-warehouse dimensional-modeling star-schema


【解决方案1】:

假设维度中没有历史,不管维度设计是否良好,都不管:

  1. 对于每个必需的维度:

    • 读取 csv 并提取应用于 temp_table 的相关字段
    • 使用select (row_number() over()), Col1, Col2, col3, col4 from temp_table为每一行添加一个序列号并保留到维度表
  2. 对于事实表:

    • 读取 csv 并提取应用于 temp_table 的相关字段
    • 使用select (row_number() over()), Col1, Col2, col3, col4 from temp_table为每一行添加一个序列号并存储在另一个temp_table_2中
    • 用适当的语句从 temp_table_2 加入到维度查找/选择给出 temp_table_3 的序列号
    • 仅将 temp_table_3 中的键插入 fact_table 中

【讨论】:

    猜你喜欢
    • 2020-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-28
    • 2013-10-16
    相关资源
    最近更新 更多