Fink CDC数据同步(三)Flink集成Hive

1 目的

  • 持久化元数据

Flink利用Hive的MetaStore作为持久化的Catalog,我们可通过HiveCatalog将不同会话中的 Flink元数据存储到Hive Metastore 中。

  • 利用 Flink 来读写 Hive 的表

Flink打通了与Hive的集成,如同使用SparkSQL或者Impala操作Hive中的数据一样,我们可以使用Flink直接读写Hive中的表。

2 环境及依赖

环境:

复制代码
vim /etc/profile

export HADOOP_CLASSPATH=`hadoop classpath`

依赖项:

flink-sql-connector-hive-3.1.2_2.12-1.16.2.jar

https://mvnrepository.com/artifact/org.apache.flink/flink-sql-connector-hive-3.1.2_2.12

hudi-hive-sync-0.13.0.jar(存在于Hive安装路径下的lib文件夹)

3 使用Catalog

Hive Catalog的主要作用是使用Hive MetaStore去管理Flink的元数据。Hive Catalog可以将元数据进行持久化,这样后续的操作就可以反复使用这些表的元数据,而不用每次使用时都要重新注册。如果不去持久化catalog,那么在每个session中取处理数据,都要去重复地创建元数据对象,这样是非常耗时的。

复制代码
-- 创建一个catalag
CREATE CATALOG hive_catalog WITH (
    'type' = 'hive',
    'hive-conf-dir' = '/etc/hive/conf'
);

show catalogs
复制代码
use catalog hive_catalog;

打开hive命令窗口

复制代码
 beeline -u "jdbc:hive2://bigdataxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" -n hive

这样可以在flink sql读写hive表

切换方言:

复制代码
SET table.sql-dialect=hive;
SET table.sql-dialect=default;
相关推荐
写代码的【黑咖啡】8 分钟前
如何在大数据数仓中搭建数据集市
大数据·分布式·spark
华清远见成都中心31 分钟前
成都理工大学&华清远见成都中心实训,助力电商人才培养
大数据·人工智能·嵌入式
梦里不知身是客111 小时前
flume防止数据丢失的方法
大数据·flume
Jackeyzhe2 小时前
Flink学习笔记:反压
flink
鹏说大数据3 小时前
数据治理项目实战系列6-数据治理架构设计实战,流程 + 工具双架构拆解
大数据·数据库·架构
凯新生物4 小时前
mPEG-SS-PLGA-DTX:智能药物递送系统
eureka·flink·ffmpeg·etcd
AI逐月5 小时前
Git 彻底清除历史记录
大数据·git·elasticsearch
天远API5 小时前
Java后端进阶:处理多数据源聚合API —— 以天远小微企业报告为例
大数据·api
希艾席帝恩6 小时前
数字孪生如何重塑现代制造体系?
大数据·人工智能·数字孪生·数据可视化·数字化转型
武汉海翎光电6 小时前
从数据采集到智能决策:船舶传感器的技术跃迁之路
大数据·人工智能