以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

相关文章

Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单

《Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单》:本文主要介绍Springboot的ThreadPoolTaskScheduler线... 目录ThreadPoolTaskScheduler线程池实现15分钟不操作自动取消订单概要1,创建订单后

JAVA中整型数组、字符串数组、整型数和字符串 的创建与转换的方法

《JAVA中整型数组、字符串数组、整型数和字符串的创建与转换的方法》本文介绍了Java中字符串、字符数组和整型数组的创建方法,以及它们之间的转换方法,还详细讲解了字符串中的一些常用方法,如index... 目录一、字符串、字符数组和整型数组的创建1、字符串的创建方法1.1 通过引用字符数组来创建字符串1.2

SpringBoot操作spark处理hdfs文件的操作方法

《SpringBoot操作spark处理hdfs文件的操作方法》本文介绍了如何使用SpringBoot操作Spark处理HDFS文件,包括导入依赖、配置Spark信息、编写Controller和Ser... 目录SpringBoot操作spark处理hdfs文件1、导入依赖2、配置spark信息3、cont

使用JavaScript操作本地存储

《使用JavaScript操作本地存储》这篇文章主要为大家详细介绍了JavaScript中操作本地存储的相关知识,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以参考一下... 目录本地存储:localStorage 和 sessionStorage基本使用方法1. localStorage

使用JavaScript将PDF页面中的标注扁平化的操作指南

《使用JavaScript将PDF页面中的标注扁平化的操作指南》扁平化(flatten)操作可以将标注作为矢量图形包含在PDF页面的内容中,使其不可编辑,DynamsoftDocumentViewer... 目录使用Dynamsoft Document Viewer打开一个PDF文件并启用标注添加功能扁平化

JavaScript DOM操作与事件处理方法

《JavaScriptDOM操作与事件处理方法》本文通过一系列代码片段,详细介绍了如何使用JavaScript进行DOM操作、事件处理、属性操作、内容操作、尺寸和位置获取,以及实现简单的动画效果,涵... 目录前言1. 类名操作代码片段代码解析2. 属性操作代码片段代码解析3. 内容操作代码片段代码解析4.

Redis的Hash类型及相关命令小结

《Redis的Hash类型及相关命令小结》edisHash是一种数据结构,用于存储字段和值的映射关系,本文就来介绍一下Redis的Hash类型及相关命令小结,具有一定的参考价值,感兴趣的可以了解一下... 目录HSETHGETHEXISTSHDELHKEYSHVALSHGETALLHMGETHLENHSET

手把手教你idea中创建一个javaweb(webapp)项目详细图文教程

《手把手教你idea中创建一个javaweb(webapp)项目详细图文教程》:本文主要介绍如何使用IntelliJIDEA创建一个Maven项目,并配置Tomcat服务器进行运行,过程包括创建... 1.启动idea2.创建项目模板点击项目-新建项目-选择maven,显示如下页面输入项目名称,选择

SpringBoot使用Apache POI库读取Excel文件的操作详解

《SpringBoot使用ApachePOI库读取Excel文件的操作详解》在日常开发中,我们经常需要处理Excel文件中的数据,无论是从数据库导入数据、处理数据报表,还是批量生成数据,都可能会遇到... 目录项目背景依赖导入读取Excel模板的实现代码实现代码解析ExcelDemoInfoDTO 数据传输

Python使用asyncio实现异步操作的示例

《Python使用asyncio实现异步操作的示例》本文主要介绍了Python使用asyncio实现异步操作的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋... 目录1. 基础概念2. 实现异步 I/O 的步骤2.1 定义异步函数2.2 使用 await 等待异