美文网首页
百问中台:数据中台ODDA之ODS层建模

百问中台:数据中台ODDA之ODS层建模

作者: sknfie | 来源:发表于2021-03-26 11:24 被阅读0次

    概述

    脚本一键安装完数据仓库,并且源数据也已经准备完毕,接下来就是进行ODDA建模。这是数据中台最为核心的部分,其实就是数据仓库的那个套路。你懂的。。。

    ODDA建模

    1. 启动hive

    在node3

    hive --service hiveserver2 &
    
    //元数据
    hive --service metastore & 
    

    2.ODS模型

    • 上传脚本
    mkdir -p /home/warehouse/sql
    //创建脚本
    ads_sale_ddl.sql  dwd_ddl.sql  dws_ddl.sql  mysql_sale.sql  ods_ddl.sql
    
    chmod +x *
    
    • 创建表
    mkdir -p /home/warehouse/sql
    hive -f /home/warehouse/sql/ods_ddl.sql
    
    • 验证
    [root@node03 sql]# hive
    hive>  show databases;
    hive> use mall;
    hive> show tables;
    
    • 导入数据
      创建脚本ods_db.sh
    #!/bin/bash
    
    #传入一个时间,$1为时间
       do_date=$1
       APP=mall
       hive=hive
    
    sql="
    load data inpath '/origin_data/$APP/db/order_info/$do_date'  OVERWRITE into table $APP"".ods_order_info partition(dt='$do_date');
    
    load data inpath '/origin_data/$APP/db/order_detail/$do_date'  OVERWRITE into table $APP"".ods_order_detail partition(dt='$do_date');
    
    load data inpath '/origin_data/$APP/db/sku_info/$do_date'  OVERWRITE into table $APP"".ods_sku_info partition(dt='$do_date');
    
    load data inpath '/origin_data/$APP/db/user_info/$do_date' OVERWRITE into table $APP"".ods_user_info partition(dt='$do_date');
    
    load data inpath '/origin_data/$APP/db/payment_info/$do_date' OVERWRITE into table $APP"".ods_payment_info partition(dt='$do_date');
    
    load data inpath '/origin_data/$APP/db/base_category1/$do_date' OVERWRITE into table $APP"".ods_base_category1 partition(dt='$do_date');
    
    load data inpath '/origin_data/$APP/db/base_category2/$do_date' OVERWRITE into table $APP"".ods_base_category2 partition(dt='$do_date');
    
    load data inpath '/origin_data/$APP/db/base_category3/$do_date' OVERWRITE into table $APP"".ods_base_category3 partition(dt='$do_date');
    "
    $hive -e "$sql"
    

    执行脚本:

    ./ods_db.sh 2021-03-24
    

    查看数据是否正确导入

    [root@node03 sql]# hive
    hive>  show databases;
    hive> use mall;
    hive> show tables;
    hive> select count(1) from ods_user_info;
    

    相关文章

      网友评论

          本文标题:百问中台:数据中台ODDA之ODS层建模

          本文链接:https://www.haomeiwen.com/subject/tzyrhltx.html