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

2023-12-15 23:45

本文主要是介绍以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 文件如下,学习时,可以自己创建测试内容
在这里插入图片描述

测试

启动 kyuubi

在这里插入图片描述

执行配置中的命令

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

bug解决

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

bug01

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

bug02

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

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

结束

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

这篇关于以csv为源 flink 创建paimon 临时表相关 join 操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/498343

相关文章

MySQL 多表连接操作方法(INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL OUTER JOIN)

《MySQL多表连接操作方法(INNERJOIN、LEFTJOIN、RIGHTJOIN、FULLOUTERJOIN)》多表连接是一种将两个或多个表中的数据组合在一起的SQL操作,通过连接,... 目录一、 什么是多表连接?二、 mysql 支持的连接类型三、 多表连接的语法四、实战示例 数据准备五、连接的性

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

Python中pywin32 常用窗口操作的实现

《Python中pywin32常用窗口操作的实现》本文主要介绍了Python中pywin32常用窗口操作的实现,pywin32主要的作用是供Python开发者快速调用WindowsAPI的一个... 目录获取窗口句柄获取最前端窗口句柄获取指定坐标处的窗口根据窗口的完整标题匹配获取句柄根据窗口的类别匹配获取句

Maven中引入 springboot 相关依赖的方式(最新推荐)

《Maven中引入springboot相关依赖的方式(最新推荐)》:本文主要介绍Maven中引入springboot相关依赖的方式(最新推荐),本文给大家介绍的非常详细,对大家的学习或工作具有... 目录Maven中引入 springboot 相关依赖的方式1. 不使用版本管理(不推荐)2、使用版本管理(推

Python位移操作和位运算的实现示例

《Python位移操作和位运算的实现示例》本文主要介绍了Python位移操作和位运算的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 位移操作1.1 左移操作 (<<)1.2 右移操作 (>>)注意事项:2. 位运算2.1

使用Python和Pyecharts创建交互式地图

《使用Python和Pyecharts创建交互式地图》在数据可视化领域,创建交互式地图是一种强大的方式,可以使受众能够以引人入胜且信息丰富的方式探索地理数据,下面我们看看如何使用Python和Pyec... 目录简介Pyecharts 简介创建上海地图代码说明运行结果总结简介在数据可视化领域,创建交互式地

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Python ZIP文件操作技巧详解

《PythonZIP文件操作技巧详解》在数据处理和系统开发中,ZIP文件操作是开发者必须掌握的核心技能,Python标准库提供的zipfile模块以简洁的API和跨平台特性,成为处理ZIP文件的首选... 目录一、ZIP文件操作基础三板斧1.1 创建压缩包1.2 解压操作1.3 文件遍历与信息获取二、进阶技

Java中字符串转时间与时间转字符串的操作详解

《Java中字符串转时间与时间转字符串的操作详解》Java的java.time包提供了强大的日期和时间处理功能,通过DateTimeFormatter可以轻松地在日期时间对象和字符串之间进行转换,下面... 目录一、字符串转时间(一)使用预定义格式(二)自定义格式二、时间转字符串(一)使用预定义格式(二)自

SpringBoot内嵌Tomcat临时目录问题及解决

《SpringBoot内嵌Tomcat临时目录问题及解决》:本文主要介绍SpringBoot内嵌Tomcat临时目录问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录SprinjavascriptgBoot内嵌Tomcat临时目录问题1.背景2.方案3.代码中配置t