实践数据湖iceberg 第五课 hive catalog特点

Flink集成Hive之Hive Catalog与Hive Dialect--以Flink1.12为例 什么是Hive Catalog 我们知道,Hive使用Hive Metastore(HMS)存储元数据信息,使用关系型数据库来持久化存储这些信息。所以,Flink集成Hive需要打通Hive的metastore,去管理Flink的元数据,这就是Hive Catalog的功能。 Hive Catalog的主要作用是使用Hive MetaStore去管理Flink的元数据。Hive Catalog可以将元数据进行持久化,这样后续的操作就可以反复使用这些表的元数据,而不用每次使用时都要重新注册。如果不去持久化ca 阅读详情

系列文章目录


@[TOC](文章目录)

前言

不以完美记录做为目标。以记录自己学习过程为主线,进行记录,记录通过实践,来了解原理,并把这个实践过程分享给后来需要学习的同学。

本节:了解hive catalog与hadoop catalog的区别,进行认识


1. 建立 hive catalog,建表

创建hive_catalog与表

CREATE CATALOG hive_catalog4 WITH (
  'type'='iceberg',
  'catalog-type'='hive',
  'uri'='thrift://hadoop101:9083',
  'clients'='5',
  'property-version'='1',
  'warehouse'='hdfs:////user/hive/warehouse/hive_catalog4'
);

在hive_catalog下创建数据库
use catalog hive_catalog4;
 
 
CREATE TABLE `hive_catalog4`.`default`.`sample` ( id BIGINT COMMENT 'unique id', data STRING );

2. 查看hdfs

[root@hadoop101 ~]# hadoop fs -ls -R /user/hive/warehouse/sample/
drwxr-xr-x   - root supergroup          0 2022-01-18 15:23 /user/hive/warehouse/sample/metadata
-rw-r--r--   2 root supergroup       1150 2022-01-18 15:23 /user/hive/warehouse/sample/metadata/00000-a426dad1-4ec5-43d0-a7c8-f82601c3d055.metadata.json

3. 写入数据到iceberg

Flink SQL> insert into `hive_catalog4`.`default`.`sample` values(1,'first line');
[INFO] Submitting SQL update statement to the cluster...
[INFO] Table update statement has been successfully submitted to the cluster:
Job ID: 57b4c09b1be6206a2d7a56410444521e

4. 检查写入后,表目录结构的变化

}[root@hadoop101 ~]# hadoop fs -ls -R /user/hive/warehouse/sample/
drwxr-xr-x   - root supergroup          0 2022-01-18 15:36 /user/hive/warehouse/sample/data
-rw-r--r--   2 root supergroup        721 2022-01-18 15:36 /user/hive/warehouse/sample/data/00001-0-c2e5157c-14da-4e49-8ef1-11d0d9266e3c-00001.parquet
drwxr-xr-x   - root supergroup          0 2022-01-18 15:36 /user/hive/warehouse/sample/metadata
-rw-r--r--   2 root supergroup       1150 2022-01-18 15:23 /user/hive/warehouse/sample/metadata/00000-a426dad1-4ec5-43d0-a7c8-f82601c3d055.metadata.json
-rw-r--r--   2 root supergroup       2180 2022-01-18 15:36 /user/hive/warehouse/sample/metadata/00001-8374a8ad-ccee-4eda-9944-e3ac8c7ea085.metadata.json
-rw-r--r--   2 root supergroup       5785 2022-01-18 15:36 /user/hive/warehouse/sample/metadata/a3ba6a34-0074-421b-a3fe-8e31e2db1546-m0.avro
-rw-r--r--   2 root supergroup       3758 2022-01-18 15:36 /user/hive/warehouse/sample/metadata/snap-7791812362316409514-1-a3ba6a34-0074-421b-a3fe-8e31e2db1546.avro

发现:数据写入了data目录,metadata发生变化,老的metadata不变,变化以增量文件的形式进行记录。hive catalog还是做了所有hadoop catalog的事情。

总结

数据写入了data目录,metadata发生变化,老的metadata不变,变化以增量文件的形式进行记录。hive catalog还是做了所有hadoop catalog的事情。
关于catalog整理 flink与其他数据库(关系型或非关系型)的catalog区别。fink的Catalog更注重提供统一的元数据访问接口和灵活的元数据管理方式。其他数据的catalog则侧重于实现元数据的持久化和管理。在实际应用中,用户可以根据具体需求选择适合的Catalog类型来管理和访问元数据或在自己内部快速定位数据位置等。flink更像(人)查询使用其他数据库的catalog(毕竟flink是实时计算组件,不是数据库)。其他数据的catalog更像(书籍目录)管理自己已存的数据或位置。 阅读详情

相关推荐

实践数据湖iceberg 第十二课 catalog是什么

系列文章目录 实践数据湖iceberg 第一课 入门 实践数据湖iceberg 第二课 iceberg基于hadoop的底层数据格式 实践数据湖iceberg 第三课 在sqlclient中,以sql方式从kafka读数据到iceberg 实践数据湖iceberg 第四课 在sqlclient中,以sql方式从kafka读数据到iceberg(升级版本到flink1.12.7) 实践数据湖iceberg 第五课 hive catalog特点 实践数据湖iceberg 第六课 从kafka写入到iceber

spark_dev的博客 3849

HiveCatalog 介绍与使用

作者:苏文鹏,腾讯 CSIG 工程师一、背景Apache Hive 已经成为了数据仓库生态系统中的核心。它不仅仅是一个用于大数据分析和 ETL 场景的 SQL 引擎,同样它也是一个数据管理平台,可用于发现、定义和演化数据。Flink 与 Hive 的集成包含两个层面:一是利用了 Hive 的 Metastore 作为持久化的 Catalog,用户可通过 HiveCatal...

cloudbigdata的博客 4862

Flink、Iceberg和Hive的Catalog比较研究

所谓Catalog即数据目录,简单讲,Catalog是企业用于管理数据资产的方式,Catalog借助元数据来管理数据,包括数据收集、组织、访问、发现和治理。可见,Catalog在数据资产管理中处于核心位置。元数据本身内容非常丰富,包括技术元数据、业务元数据和操作元数据,本文仅仅研究大数据计算存储框架本身的技术元数据,比如数据库、数据表、分区、视图、函数等。限于篇幅,参与比较的计算存储框架为Flink、Iceberg和Hive,比较维度为Catalog的定义、Catalog的实现和生态拓展几个方面。 Cata

Deepexi_Date的博客 2789

Flink SQl 客户端-Catalog(hive的catalog是重点)

4、Flink SQl 客户端 1、启动一个flink的 集群 可以使用flink独立集群 也可以使用yarn-session.sh # 启动一个flinkyarn-sesion集群 yarn-sesion.sh -d 2、启动sql-client sql-client.sh 3、测试命令行 -- 创建source表 CREATE TABLE datagen ( id STRING, ...

weixin_48370579的博客 6832

实践数据湖iceberg 第二课 iceberg基于hadoop的底层数据格式

实践数据湖iceberg 第二课 iceberg基于hadoop的底层数据格式 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录实践数据湖iceberg 第二课 iceberg基于hadoop的底层数据格式前言1、hadoop catalog创建1.1 执行建立 catalog脚本1.2 查看hdfs 目录2.建表2.1 建表2.2 查看建表后的目录结构1.写入数据1.1 写入1条数据1.2 写入数据本质上触发一个flink jiob1.3 查看hdfs目录1.4 再写一

spark_dev的博客 3839

Iceberg Catalog 的实现和迁移

因为在任意时刻,所有的读和写操作看到表的表的状态是相同的。两个并发的写入操作,第 2 个写入操作提交的时候不能覆写第 1 个写入操作对数据的修改,导致数据丢失。Iceberg Catalog 的接口定义了各种 Catalog 需要实现的方法,主要包括列出存在的表,创建表,删除表,检查表是否存在,给表改名。并且都支持迁移表的整个历史。register 迁移后,不删除旧的 catalog 中表定义,可以用来预迁移的验证。使用 register,不能使用不同的 catalog 写入数据,这样会导致数据丢失。

houzhizhen的专栏 1829

实践数据湖iceberg 第一课

数据湖iceberg 系列文章目录 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 数据湖实践第一课 flink+iceberg入门数据湖iceberg 系列文章目录前言一、数据湖iceberg实践环境说明二、启动flink sql客户端1. 启动flink standalone集群2.下载flink iceberg runtime的包,启动flink-sql3.创建基于hadoop的catalog4.写数据,读数据测试(hadoop catalog的限制)5.创建基于hive的cat

spark_dev的博客 5327

深入对比:Hive Catalog vs Hadoop Catalog,在Hive中管理Iceberg表该怎么选?

本文深入对比了Hive Catalog与Hadoop Catalog在管理Iceberg表时的核心差异与适用场景,帮助读者构建元数据管理的决策框架。从存储原理、功能边界到实战陷阱,详细解析了两种Catalog的设计哲学,并提供了与Hive生态集成的优化建议和典型场景下的选型策略。

weixin_31162247的博客 309

Flink集成数据湖之实时数据写入iceberg

文章目录背景iceberg简介flink实时写入准备sql client环境创建catalog创建db创建table插入数据查询代码版本总结 背景 随着大数据处理结果的实时性要求越来越高,越来越多的大数据处理从离线转到了实时,其中以flink为主的实时计算在大数据处理中占有重要地位。 Flink消费kafka等实时数据流。然后实时写入hive,在大数据处理方面有着广泛的应用。此外由于列式存储格式如parquet或者orc在查询性能方面有着显著的提高,所以大家都会优先选择列式存储作为我们的存储格式。 传统的这

公众号[大数据技术与应用实战],分享大数据实战案例 5105

StarRocks从入门到精通系列七:理解Catalog、使用Catalog管理Hive、Iceberg

StarRocks从入门到精通系列七:理解Catalog、使用Catalog管理Hive、Iceberg

zhengzaifeidelushang的博客 1975

数据湖(十):Hive与Iceberg整合

Iceberg就是一种表格式,支持使用Hive对Iceberg进行读写操作,但是对Hive的版本有要求,如下:操作Hive 2.xHive 3.1.2CREATE EXTERNAL TABLE√√CREATE TABLE√√DROP TABLE√√SELECT√√INSERT INTO√√这里基于Hive3.1.2版本进行Hive操作Iceberg表讲解。想要使用Hive支持查询Iceberg表,首先需要下载“iceberg-hive-runtime.jar”,Hive通过该Jar可以加载Hive或者更新I

Lansonli(蓝深李)的博客 3088

实践数据湖iceberg 第九课 合并小文件

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录系列文章目录前言1. 合并小文件二、使用步骤1.引入库2.读入数据总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例可供参考

spark_dev的博客 4963

告别第三方插件:官方Fused Library如何重塑Android库的合并与发布流程

本文详细介绍了Android官方推出的Fused Library如何替代第三方fat-aar插件,优化Android库的合并与发布流程。通过原生支持、智能依赖管理等优势,Fused Library解决了版本兼容性、依赖传递等核心痛点,提供了更稳定高效的开发体验。文章还提供了迁移实操指南和工程实践建议,帮助开发者顺利过渡到官方方案。

weixin_42561040的博客 252

实践数据湖iceberg 第十八课 多种客户端与iceberg交互启动命令(常用命令)

实践数据湖icerberg专栏 本专栏记录iceberg菜鸟到专家的过程,记录踩坑,填坑,iceberg特征的了解与原理的认知

spark_dev的博客 1888

Windows平台COLMAP实战:从零到三维重建的避坑指南

本文详细介绍了在Windows平台上使用COLMAP进行三维重建的完整流程,包括安装指南、数据准备技巧、图形界面操作及常见问题解决方案。特别针对Windows用户提供了CUDA版本与非CUDA版本的性能对比,帮助用户高效完成从照片到三维模型的重建过程。

weixin_29090677的博客 189

YOLO详解

本文参考知乎 https://zhuanlan.zhihu.com/p/25236464 1. YOLO的创新点 YOLO将物体检测作为回归问题求解。基于一个单独的end-to-end网络,完成从原始图像的输入到物体位置和类别的输出。 从网络设计上,YOLO与two steps的目标检测方法如RCNN、Fast RCNN和Faster RCNN的区别如下: YOLO训练和检测均是在一个单独网...

UnknownPlayer的博客 9945

数据湖Iceberg-Hive集成Iceberg(3)

这种情况下不能使用Iceberg的分区转换,例如:days(timestamp),如果想要使用Iceberg格式表的分区转换标识分区,需要使用Spark或者Flink引擎创建表。修改hive-interactive-env template和hive-env template中搜索HIVE_AUX_JARS_PATH,被配置我们引用的包。的hive-interactive-env template和hive-env template中搜索HIVE_AUX_JARS_PATH,被配置我们引用的包。

jast 1885

cherry使用MCP协议Streamable HTTP实践

摘要:Streamable HTTP协议是针对传统HTTP+SSE传输方式的改进方案,解决了连接恢复、服务器资源占用和单向通信等问题。该协议基于普通HTTP实现,支持无状态服务器、纯HTTP服务和多轮对话,同时兼容现有基础设施。通过演示展示了服务端和客户端的配置方法,体现了其灵活性和实用性。MCP(多轮对话协议)作为扩展LLM能力的关键技术,代表着未来交互式AI的发展趋势。

全网120W+关注AI拉呱,专注人工智能以及科技前沿! 563

数据湖之iceberg系列(五)-hive处理iceberg中的数据

1 将iceberg-hive-runtime-0.10.0.jar包添加到hive的lib包下 , 或者是在客户端使用add jar 添加到项目中 2 设置参数 / 或者在hive-site.xml中设置 3 读取catalog为hadoop的表中的数据 , 需要完成hive表和hadoop表的映射 SET engine.hive.enabled=true; SET iceberg.engine.hive.enabled=true ; CREATE EXTERNAL TABLE tb...

HANG.NIAN 5789

【华为OD机试真题】65、高矮个子排队 | 机试真题+思路参考+代码解析 (C++、Java、Py、C语言、JS)

题目描述 >现在有一队小朋友,他们高矮不同,我们以正整数数组表示这一队小朋友的身高,如数组{5,3,1,2,3}。 >  我们现在希望小朋友排队,以"高" "矮" "高" "矮" 顺序排列,每一个高位置的小朋友要比相邻的位置高或者相等;每个 "矮" 位置的小朋友要比相邻的位置矮或者相等; >  要求小朋友们移动的距离和最小,第一个从“高"位开始排,输出最小移动距离即可。 >  例如,在示范小队{5,3,1,2,3}中, {5, 1, 3, 2, 3}是排序结果。 > 

KJ.JK 2098

【报错】(pycharm运行程序)OSError: [WinError 1114] 动态链接库(DLL)初始化例程失败。 Error loading

1 报错 OSError: [WinError 1114] 动态链接库(DLL)初始化例程失败。 Error loading 2 分析原因 通过 activate Distance 进行自己创建的 Distance 虚拟环境中,输入python会显示环境中python的版本信息,再依次import,显然不会报错。 这是因为在Anaconda的环境下有支持 import torch 的 dll,而在PyCharm中使用的是自己创建的新环境,还缺少相应支持的dll,仅需在PyCharm中配置环境变量。.

静谧、淡雅 8621

实践数据湖iceberg 第十课 快照删除

系列文章目录 实践数据湖iceberg 第一课 入门 实践数据湖iceberg 第二课 iceberg基于hadoop的底层数据格式 实践数据湖iceberg 第三课 在sqlclient中,以sql方式从kafka读数据到iceberg 实践数据湖iceberg 第四课 在sqlclient中,以sql方式从kafka读数据到iceberg(升级版本到flink1.12.7) 实践数据湖iceberg 第五课 hive catalog特点 实践数据湖iceberg 第六课 从kafka写入到iceber

spark_dev的博客 3199

在虚拟机中对阿克曼转向车进行导航及避障的仿真测试

一、    在我使用rosdep install teb_local_planner去安装teb_local_planner的时候,报错:Command ‘rosdep’ not found, but can be installed with:sudo apt install python3-rosdep2    我花大半个月好不容易建立起的一系列ROS环境,被python3-rosdep2这条万恶的语句连同ROS一起给我删了。。。悲伤来的那么猝不及防    随着ROS版本的迭代,相关资料很多都不再适用

慕羽★的博客 3805

实践数据湖iceberg 第三十四课 基于数据湖icerberg的流批一体架构-流架构测试

lambda架构中, kafka->flink中支持 各种流函数, 数据入iceberg后,如何对icberg进行流操作,实现类似流函数的结果? 基于数据湖的流批一体是什么意思?

spark_dev的博客 2189

【YOLOv11】006、YOLOv11数据增强策略:Mosaic、MixUp等增强技术原理解析

摘要:YOLOv11在产线缺陷检测中遇到小尺寸瑕疵漏检问题,暴露了训练数据过于"干净"的缺陷。数据增强的核心是提升模型泛化能力,而非简单扩充数据。Mosaic增强通过多图拼接迫使模型处理多尺度目标,需注意边界框裁剪细节;MixUp通过线性插值使决策边界更平滑,但需避免类别冲突。自适应增强策略应随训练进度动态调整强度。实际应用中,需针对小目标、类别不平衡等场景调整增强参数,并确保验证与推理流程一致。数据增强应针对性解决具体问题,而非盲目尝试组合。

企鹅码农的专属播客,分享10多年的实战案例和经验解读,包含YOLO、RT-DETR、AI等各个工作领域。 365

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

实践数据湖iceberg 第三十二课 DDL语句通过hive catalog持久化方法

问题: flink的sql-client上,创建表,只是当前session有用,退出回话,需要重新创建表。多人共享一个表,很麻烦,有什么办法? 解决方法:把建表的DDL操作,持久化到HIVE上,由hive来管理。如何实现呢? 使用hive catalog,在hive catalog下创建表。所有表都是持久化的。

spark_dev的博客 1226

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

上一篇: 实践数据湖iceberg 第四课 在sqlclient中,以sql方式从kafka读数据到iceberg(升级版本到flink1.12.7)
下一篇: 实践数据湖iceberg 第六课 从kafka写入到iceberg失败问题 解决
*星星之火*
博客等级 码龄12年 3798粉丝 222原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值