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

目录

  • 概述
  • 配置
    • 关键配置
    • 测试
      • 启动 kyuubi
      • 执行配置中的命令
  • bug解决
    • bug01
    • bug02
  • 结束

概述

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

环境:各组件版本如下

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

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

  • kyuubi整合flink yarn application model

配置

概述:临时表 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 文件如下,学习时,可以自己创建测试内容
以csv为源 flink 创建paimon 临时表相关 join 操作_第1张图片

测试

启动 kyuubi

在这里插入图片描述

执行配置中的命令

执行配置中的命令,几条命令依次执行如下图:
以csv为源 flink 创建paimon 临时表相关 join 操作_第2张图片
以csv为源 flink 创建paimon 临时表相关 join 操作_第3张图片
在这里插入图片描述
以csv为源 flink 创建paimon 临时表相关 join 操作_第4张图片
以csv为源 flink 创建paimon 临时表相关 join 操作_第5张图片

bug解决

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

bug01

来图如下:
以csv为源 flink 创建paimon 临时表相关 join 操作_第6张图片
一看缺失类,老套路,看看是哪个包下的,添加至 flink 1.17.1 下面的 lib 下。
在这里插入图片描述

bug02

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

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

结束

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

你可能感兴趣的:(大数据,flink,大数据,csv,paimon,临时表,join)