flinksql写入hudi 踩坑实录
flinksql写入hudi
测试环境:
Flink 1.11.1
hudi 0.8.0
Hadoop 3.0.0
Hive 2.1.1
准备工作:
1.安装flink 1.11.1,要下载带hadoop版本的;
2.下载hudi-flink-bundle_2.1?.jar,并放入$FLINK_HOME/lib下。下载地址:https://repo.maven.apache.org/maven2/org/apache/hudi/hudi-flink-bundle_2.11/
具体实施步骤:
Batch模式:
启动flink sql-client:
bin/sql-client.sh embedded -j lib/hudi-flink-bundle_2.11-0.8.0.jar shell
创建hudi表:
-- 设置一下查询模式为tableau。
set execution.result-mode=tableau; CREATE TABLE t1(uuid VARCHAR(20),name VARCHAR(10),age INT,ts TIMESTAMP(3),`partition` VARCHAR(20)
)
PARTITIONED BY (`partition`)
WITH ('connector' = 'hudi','path' = 'hdfs://nameservice/hudi/t1','table.type' = 'MERGE_ON_READ'
);
插入数据:
-- insert data using values
INSERT INTO t1 VALUES('id1','Danny',23,TIMESTAMP '1970-01-01 00:00:01','par1'),('id2','Stephen',33,TIMESTAMP '1970-01-01 00:00:02','par1'),('id3','Julian',53,TIMESTAMP '1970-01-01 00:00:03','par2'),('id4','Fabian',31,TIMESTAMP '1970-01-01 00:00:04','par2'),('id5','Sophia',18,TIMESTAMP '1970-01-01 00:00:05','par3'),('id6','Emma',20,TIMESTAMP '1970-01-01 00:00:06','par3'),('id7','Bob',44,TIMESTAMP '1970-01-01 00:00:07','par4'),('id8','Han',56,TIMESTAMP '1970-01-01 00:00:08','par4');
查询数据:
-- query from the hudi table
select * from t1;
更新数据:
insert into t1 values('id1','Danny',27,TIMESTAMP '1970-01-01 00:00:01','par1');
Streaming模式:
建表并插入数据:
CREATE TABLE t1(uuid VARCHAR(20),name VARCHAR(10),age INT,ts TIMESTAMP(3),`partition` VARCHAR(20)
)
PARTITIONED BY (`partition`)
WITH ('connector' = 'hudi','path' = 'oss://vvr-daily/hudi/t1','table.type' = 'MERGE_ON_READ','read.streaming.enabled' = 'true', -- 这里将 table option read.streaming.enabled 设置为 true,表明通过 streaming 的方式读取表数据;'read.streaming.start-commit' = '20210316134557', -- opiton read.streaming.check-interval 指定了 source 监控新的 commits 的间隔为 4s;'read.streaming.check-interval' = '4' -- option table.type 设置表类型为 MERGE_ON_READ,目前只有 MERGE_ON_READ 表支持 streaming 读.
);
流式模式查询数据:
-- Then query the table in stream mode
select * from t1;
踩坑:
1.报错如下:
问题解决:flink中有个jar包冲突,不知其他版本会不会有这样的问题。
测试总结:
目前flink写入使用的是同步合并,默认五次提交一合并,导致会有log文件没有生成parquet文件,log文件中的数据暂没有查到,还请大神指教。
flinksql写入hudi 踩坑实录相关推荐
- MMDetectionV2 + Colab 超详细教程及踩坑实录
文章目录 前言 一.环境配置 二.准备自己的数据集 Aug.14更新 三:修改config文件 3.1 文件结构 3.2 (本地)修改config文件 3.2.1 (本地)构造自己模型的权重文件 3. ...
- JAVA发布栅格图层_基于 WebGL实现自定义栅格图层踩坑实录
以下内容转载自totoro的文章<WebGL-Y轴翻转踩坑实录> 作者:totoro 链接:blog.totoroxiao.com/webgl-flipY- 来源:blog.totorox ...
- Win 10 + Ubuntu 18.04 双系统安装与深度学习环境配置安装踩坑实录(上篇)
Win 10 + Ubuntu 18.04 双系统安装与深度学习环境配置安装踩坑实录(上篇) 折腾了两三天总算顺利在电脑上完成了装x的双系统安装,一路走来还比较顺利,主要在ubuntu的显卡设置上躺了 ...
- PAT乙级题库踩坑实录
PAT乙级题库踩坑实录 [截止2021.7.28乙级题库已经全部AC] 题目名称: 1030 完美数列 (25 分) 测试点3踩坑 每次取m后,不用从m后第一个元素开始判断是否大于mp,直接从m后第m ...
- iOS 入门开发踩坑实录
其实人生也没有什么道理可讲,但是我们不必丧气,还是要期待,人生有奇遇. 前言 苹果开发者:iOS Developer 最近因为工作需要要开始搞iOS了,简单记录下我收集和学习的过程. 学习资料准备 组 ...
- qt5.15.2-银河麒麟-龙芯国产化-项目打包踩坑实录
qt5.15.2-银河麒麟-龙芯国产化-项目打包踩坑实录 linuxdeployqt几乎是唯一解决方案,网上各种自己写脚本根据ldd去拷贝的,最后大概率都是segment default-除非你是纯Q ...
- HP Zbook 15重装ubantu18后,安装Nvidia驱动(踩坑实录,不推荐尝试)
电脑型号:HP Zbook 15 G6 显卡:nvidia Quadro T1000 安装方式: 使用官方的NVIDIA驱动进行手动安装(经过安装方式和结果对比,强烈不推荐手动安装的方式,这就是一篇 ...
- RIME(小狼毫)踩坑实录(常见问题)
目录 RIME(小狼毫)踩坑实录 适合谁使用 配置文件规则 文件目录 命名格式 yaml语法 踩坑 配置微软双拼 增加词典 GUI方式(不推荐) 编写yaml文件方式 符号上屏 总结 RIME(小狼毫 ...
- Chromium内核浏览器编译记(一)踩坑实录
转载请注明出处:https://blog.csdn.net/kong_gu_you_lan/article/details/123862868 本文出自 容华谢后的博客 往期回顾: Chromium内 ...
最新文章
- nginx limit_rate突然限速失败
- web页,如何按回车获得焦点,触发web控件事件..?
- 虚拟服务器设置upnp,TP-Link路由器如何设置UPNP开启【设置步骤】
- EasyUI中combotree允许多选的时候onSelect事件会重复触发onCheck事件
- Linux驱动调试中的Debugfs的使用简介 CONFIG_DEBUG_FS 的功能与配置
- POJ3889-Fractal Streets【分形,递归,分治】
- 停止追赶最新的 RPA 趋势
- 视差滚动不适合网页的5个原因
- 下班老忘记打卡,在电脑上做一个定时下班打卡的弹窗
- SpringMVC 环境搭建
- 用IIS建立高安全性Web服务器
- 系统评测指标:准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F-Score
- WebStorm 2018破解版
- Python Cartopy地图投影【2】
- 联想员工亲历联想大裁员:公司不是我的家
- 关于8421BCD码修正加6问题
- revit 对计算机最低配置,Revit2016官方推荐电脑配置要求
- [Ubuntu] Ubuntu16.04+win10+联想Y7000+显卡+WIFI 装机成功
- mysql 规则引擎_为什么使用规则引擎?
- nss什么意思计算机网络用语,扩列cqy是什么意思,nss又是什么意思