以csv为源 flink 创建paimon 临时表相关 join 操作

2023-12-13 05:43:32

概述

目标:生产中有需要外部源数据做paimon的数据源,生成临时表,以使用与现有正式表做相关统计及 join 操作。

环境:各组件版本如下

  • kyuubi 1.8.0
  • flink 1.17.1
  • paimon 0.5 正式版本
  • hive 3.1.3

阅读此文前,需涉及前置的知识点如下

配置

概述:临时表 paimon 此版本仅 Flink支持。与外部表一样,临时表只是记录的,而不是由当前Flink SQL会话管理的。如果删除临时表,则不会删除其资源。当 Flink SQL 会话关闭时,临时表也会被丢弃。

如果您想将 Paimon catalog与其他表一起使用,但不想将它们存储在其他的 catalog 中,可以创建一个临时表。下面的关键配置 Flink SQL 创建了一个 Paimon catalog 和一个临时表,并进行了测试。

关键配置

来看一些关键配置,其它配置如有疑问,请参考 kyuubi整合flink yarn application model

CREATE CATALOG paimon_hive WITH (
    'type' = 'paimon',
    'metastore' = 'hive',
    'uri' = 'thrift://10.xx.xx.22:9083',
    'warehouse' = 'hdfs:///data/hive/warehouse/paimon',
    'default-database'='tmp'
);


CREATE TEMPORARY TABLE test (
    UnitId STRING,
    WorkOrder STRING
) WITH (
    'connector' = 'filesystem',
    'path' = 'hdfs:///data/hive/warehouse/tmp/Small.csv',
    'format' = 'csv'
);

SET execution.runtime-mode=batch;

select * from test;

使用的 csv 文件如下,学习时,可以自己创建测试内容
在这里插入图片描述

测试

启动 kyuubi

在这里插入图片描述

执行配置中的命令

执行配置中的命令,几条命令依次执行如下图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

bug解决

坑随时都有,下面解决一下测试过程的bug。

bug01

来图如下:
在这里插入图片描述
一看缺失类,老套路,看看是哪个包下的,添加至 flink 1.17.1 下面的 lib 下。
在这里插入图片描述

bug02

重新启动时,报有重复类,冲突了

这个以前解决过,直接上解决方案。如下图:
在这里插入图片描述
这两个解决之后,就按上文中 测试 流程走就可以了。

结束

以csv为源 flink 创建paimon 临时表相关 join 操作 ,至此就结束了。如有疑问,欢迎评论区留言。

文章来源:https://blog.csdn.net/2301_79691134/article/details/134934369
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。