跳至内容
- 文档大纲:
- 1.导入csv文件进入 hdfs(hive)的方法思路
- 2.具体操作步骤详解:配置定时工作流,获取每日新增的csv文件数据,写入到hive数据库表中。
- 1.导入csv文件进入 hdfs(hive)的方法思路
- 第一步:将excel表格转为.csv格式文件(utf-8格式)
- 第二步:将建表语句中分隔符改为逗号(英文),格式改为text文本格式,创建分区表
- set hive.exec.dynamic.partition=true;
- set hive.exec.dynamic.partition.mode=nonstrict;
- CREATE TABLE test_zyy.load_data_test(
- `shop_name` string COMMENT ‘店铺名称’,
- `vip_card_id` string COMMENT ‘vip卡号’,
- `style_code` string COMMENT ‘款号’,
- `kinds` string COMMENT ‘种类’,
- `price` string COMMENT ‘吊牌价’,
- `make_price` string COMMENT ‘实收’,
- `create_time` string COMMENT ‘创建时间’,
- `update_time` string COMMENT ‘更新时间’,
- `bonus` string COMMENT ‘当前积分’,
- `vip_memberorder` string COMMENT ‘vip等级’,
- `vip_phone` string COMMENT ‘vip手机号’,
- `vip_sex` string COMMENT ‘vip性别’,
- `vip_birthday` string COMMENT ‘vip生日’,
- `colors_code` string COMMENT ‘色号’,
- `colors_name` string COMMENT ‘色号名称’,
- `big_class` string COMMENT ‘大类’,
- `small_class` string COMMENT ‘小类’)
- partitioned by (dt string)
- ROW FORMAT SERDE
- ‘org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe’
- WITH SERDEPROPERTIES (
- ‘field.delim’=’,’,
- ‘serialization.format’=’,’)
- STORED AS textfile
- 第三步:使用linux rz命令 将表格上传到服务器指定目录下
- 本例中将需要上传的csv文件上传到 xxx服务器的 /opt/xrl_files/load_data_test 目录下
- xxx 服务器登录账号密码 root / xxx (要访问此服务器需要使用我司的VPN)
- 第五步:将数据加载至表中(分区表需要先建立分区,在加载)
- 在hive客户端执行如下语句,将/opt/xrl_files/load_data_test 目录下的csv文件数据,加载到 test_zyy.load_data_test 表中,且这些数据隶属于本日分区,从而实现数据的增量写入
- load data local inpath ‘/opt/xrl_files/dw_detail_202212011627.csv’ into table test_zyy.load_data_test partition(dt =’2022-12-01′);
- 导入成功

- HDFS文件系统上的效果

- 数据查看

- 第六步:经验证后,数据成功写入后,清空服务器上用来暂存今日csv文件的文件夹