会宁网站建设,响应式网站的意义,jsp网站开发代码下载,wordpress 后台精简目录
1. 准备HDFS数据
2. 创建Doris表
3. 创建Spark Load导入任务
4. 查看导入任务状态 进入正文之前#xff0c;欢迎订阅专题、对博文点赞、评论、收藏#xff0c;关注IT贫道#xff0c;获取高质量博客内容#xff01;
宝子们订阅、点赞、收藏不迷路#xff01;抓紧…目录
1. 准备HDFS数据
2. 创建Doris表
3. 创建Spark Load导入任务
4. 查看导入任务状态 进入正文之前欢迎订阅专题、对博文点赞、评论、收藏关注IT贫道获取高质量博客内容
宝子们订阅、点赞、收藏不迷路抓紧订阅专题 下面以导入HDFS中数据到Doris表为例介绍Spark Load的使用这里使用“spark1”Spark Resource 。
1. 准备HDFS数据
准备spark_load_data.csv数据文件内容如下。
spark_load_data.csv:
1,zs,18,1002,ls,19,1013,ww,20,1024,ml,21,1035,tq,22,104
将以上数据文件上传到hdfs://mycluster/input/目录下
[rootnode1 ~]# hdfs dfs -put ./spark_load_data.csv /input/
2. 创建Doris表
create table spark_load_t1(id int,name varchar(255),age int,score double)ENGINE olapDUPLICATE KEY(id)DISTRIBUTED BY HASH(id) BUCKETS 8;
注意Spark load 还不支持 Doris 表字段是String类型的导入如果你的表字段有String类型的请改成varchar类型不然会导入失败提示 type:ETL_QUALITY_UNSATISFIED; msg:quality not good enough to cancel
3. 创建Spark Load导入任务
LOAD LABEL example_db.label1
(
DATA INFILE(hdfs://node1:8020/input/spark_load_data.csv)
INTO TABLE spark_load_t1
COLUMNS TERMINATED BY ,FORMAT AS csv
(id,name,age,score_tmp)
SET
(
score score_tmp age
))
WITH RESOURCE spark1
(spark.driver.memory 512M,spark.executor.cores 1,
spark.executor.memory 512M,
spark.shuffle.compress true
)
PROPERTIES
(
timeout 3600
);
注意
加载的HDFS中的文件不支持HA写法需要指定Active NameNode节点信息。当 Spark Load 作业状态不为 CANCELLED 或 FINISHED 时可以被用户手动取消。取消时需要指定待取消导入任务的 Label 。取消导入命令语法可执行 HELP CANCEL LOAD 查看。如果想要清除对应完成的label可以执行“clean label from example_db;”命令即可。
4. 查看导入任务状态
以上任务提交之后可以在Yarn WebUI中查看提交的任务执行情况 也可以在FE 节点“/software/doris-1.2.1/apache-doris-fe/log/spark_launcher_log”中查看执行日志FE节点不一定在node1-node3哪台节点执行Spark ETL任务执行任务的节点上才有以上日志路径该日志默认保存3天。
在node1 mysql客户端也可以执行命令查看Spark Load导入情况命令如下
mysql show load order by createtime desc limit 1\G;*************************** 1. row ***************************JobId: 37038Label: label1State: FINISHEDProgress: ETL:100%; LOAD:100%Type: SPARKEtlInfo: unselected.rows0; dpp.abnorm.ALL0; dpp.norm.ALL5TaskInfo: cluster:spark1; timeout(s):3600; max_filter_ratio:0.0ErrorMsg: NULLCreateTime: 2023-03-10 16:11:44EtlStartTime: 2023-03-10 16:12:16EtlFinishTime: 2023-03-10 16:12:59LoadStartTime: 2023-03-10 16:12:59LoadFinishTime: 2023-03-10 16:13:09URL: http://node1:8088/proxy/application_1678424784452_0001/JobDetails: {Unfinished backends:{0-0:[]},ScannedRows:5,TaskNumber:1,LoadBytes:0,All backends:{0-0:[-1]},FileNumber:1,FileSize:60} TransactionId: 24027ErrorTablets: {}1 row in set (0.01 sec)
当Yarn中任务执行完成之后通过以上命令查询Spark Load 执行情况还在执行主要是因为当Spark ETL job完成后Doris还会加载数据到对应的BE中完成之后状态会改变成FINISHED。
5. 查看Doris表结果
mysql select * from spark_load_t1;-------------------------| id | name | age | score |-------------------------| 2 | ls | 19 | 120 || 3 | ww | 20 | 122 || 5 | tq | 22 | 126 || 4 | ml | 21 | 124 || 1 | zs | 18 | 118 |------------------------- 个人主页https://blog.csdn.net/qq_32020645?typeblog 主页包含各种IT体系技术 订阅拥抱独家专题你的订阅将点燃我的创作热情 点赞赞同优秀创作你的点赞是对我创作最大的认可 ⭐️ 收藏收藏原创博文让我们一起打造IT界的荣耀与辉煌 ✏️评论留下心声墨迹你的评论将是我努力改进的方向