接下来几节将详细介绍各层如何实现各自功能。
ODS层:存放原始数据,直接加载原始日志、数据。
-
启动hadoop集群,启动Hive。
[hadoop@hadoop151 ~]$ start-dfs.sh [hadoop@hadoop152 ~]$ start-yarn.sh [hadoop@hadoop151 bin]$ ./hive
-
创建数据库
hive (default)> create database gmall; hive (default)> use gmall;
-
分析字段并建创建启动日志表。
hive (gmall)> drop table if exists ods_start_log; CREATE EXTERNAL TABLE ods_start_log (`line` string) PARTITIONED BY (`dt` string) STORED AS INPUTFORMAT 'com.hadoop.mapred.DeprecatedLzoTextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION '/warehouse/gmall/ods/ods_start_log';
-
加载数据。
hive (gmall)> load data inpath '/origin_data/gmall/log/topic_start/2020-02-03' into table gmall.ods_start_log partition(dt='2020-02-03');
-
分析字段并建创建事件日志表。
hive (gmall)> drop table if exists ods_event_log; CREATE EXTERNAL TABLE ods_event_log(`line` string) PARTITIONED BY (`dt` string) STORED AS INPUTFORMAT 'com.hadoop.mapred.DeprecatedLzoTextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION '/warehouse/gmall/ods/ods_event_log';
-
加载数据
hive (gmall)> load data inpath '/origin_data/gmall/log/topic_event/2020-02-03' into table gmall.ods_event_log partition(dt='2020-02-03');
-
查看数据是否存在。
hive (gmall)> select * from ods_start_log limit 2; hive (gmall)> select * from ods_event_log limit 2;
- 可以使用脚本文件快速上传。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。