首页 > 其他分享 >Hudi学习笔记(2)

Hudi学习笔记(2)

时间:2023-05-06 17:11:46浏览次数:40  
标签:write Hudi hive 笔记 sync 学习 datasource hoodie Configs

https://hudi.apache.org/docs/configurations

Hudi配置分类

  • Spark Datasource Configs

Spark Datasource 的配置。

  • Flink Sql Configs

Flink SQL source/sink connectors 的配置,如:index.type、write.tasks、write.operation、clean.policy、clean.retain_commits、clean.retain_hours、compaction.max_memory、hive_sync.db、hive_sync.table、hive_sync.metastore.uris、write.retry.times、write.task.max.size 等。

  • Write Client Configs

控制 Hudi 使用 RDD 的 HoodieWriteClient API 的配置。

  • Metastore and Catalog Sync Configs

同步外部元数据的配置。

  • Metrics Configs

度量配置。

  • Record Payload Config

低级别定制配置,比如设置 Payload 的配置 hoodie.compaction.payload.class 等。

  • Kafka Connect Configs

使用 Kafka 作为 Sink Connector 的写 Hudi 表的配置。

  • Amazon Web Services Configs

亚马逊 Web Service 配置。

Spark Datasource Configs

  • 读配置
配置项 是否必须 默认值 配置说明
as.of.instant Y N/A 0.9.0 版本新增,时间旅行查询从哪儿开始,有两种格式的值:yyyyMMddHHmmss 和 yyyy-MM-dd HH:mm:ss,如果不指定则从最新的 snapshot 开始
hoodie.file.index.enable N true
hoodie.schema.on.read.enable N false
hoodie.datasource.streaming.startOffset N earliest
hoodie.datasource.write.precombine.field N ts
hoodie.datasource.read.begin.instanttime Y N/A
hoodie.datasource.read.end.instanttime Y N/A
hoodie.datasource.read.paths Y N/A
hoodie.datasource.merge.type N payload_combine
hoodie.datasource.query.incremental.format N latest_state
hoodie.datasource.query.type N snapshot
hoodie.datasource.read.extract.partition.values.from.path N false
hoodie.datasource.read.file.index.listing.mode N lazy
hoodie.datasource.read.file.index.listing.partition-path-prefix.analysis.enabled N true
  • 写配置
配置项 是否必须 默认值 配置说明
hoodie.datasource.hive_sync.mode Y N/A
hoodie.datasource.write.partitionpath.field Y N/A
hoodie.datasource.write.precombine.field N ts
hoodie.datasource.write.recordkey.field Y N/A
hoodie.datasource.write.precombine.field N COPY_ON_WRITE
hoodie.sql.insert.mode N upsert
hoodie.sql.bulk.insert.enable N false
hoodie.datasource.write.table.name Y N/A
hoodie.datasource.write.operation N upsert
hoodie.datasource.write.payload.class N hoodie.datasource.write.payload.class
hoodie.datasource.write.partitionpath.urlencode N false
hoodie.datasource.hive_sync.partition_fields N N/A
hoodie.datasource.hive_sync.auto_create_database N true 自动创建不存在的数据库
hoodie.datasource.hive_sync.database N default
hoodie.datasource.hive_sync.table N unknown
hoodie.datasource.hive_sync.use_jdbc N hive
hoodie.datasource.hive_sync.password N hive
hoodie.datasource.hive_sync.enable N false
hoodie.datasource.hive_sync.ignore_exceptions N false
hoodie.datasource.hive_sync.use_jdbc N true
hoodie.datasource.hive_sync.jdbcurl N jdbc:hive2://localhost:10000 Hive metastore url
hoodie.datasource.hive_sync.metastore.uris N thrift://localhost:9083 Hive metastore url
hoodie.datasource.hive_sync.base_file_format N PARQUET
hoodie.datasource.hive_sync.support_timestamp N false
hoodie.datasource.meta.sync.enable N false
hoodie.clustering.inline N false
hoodie.datasource.write.partitions.to.delete Y N/A 逗号分隔的待删除分区列表,支持星号通配符
  • PreCommit Validator 配置
配置项 是否必须 默认值 配置说明
hoodie.precommit.validators N
hoodie.precommit.validators.equality.sql.queries N
hoodie.precommit.validators.inequality.sql.queries N
hoodie.precommit.validators.single.value.sql.queries N
配置项 是否必须 默认值 配置说明
path Y N/A Hudi表的 base path,如果不存在会创建,否则应是一个已初始化成功的 hudi 表
read.end-commit Y N/A
read.start-commit Y N/A
read.tasks Y N/A
write.tasks Y N/A
write.partition.format Y N/A 分区路径格式,仅 write.datetime.partitioning 为 true 是有效。两种默认值:1、yyyyMMddHH,当分区字段类型为 timestamp(3) WITHOUT TIME ZONE, LONG, FLOAT, DOUBLE, DECIMAL 是;2、yyyyMMdd,当分区字段类型为 DATE 和 INT 时。
write.bucket_assign.tasks Y N/A
archive.max_commits N 50
archive.min_commits N 40
cdc.enabled N false
changelog.enabled N false
clean.async.enabled N true
clean.policy N KEEP_LATEST_COMMITS 清理策略,可取值:KEEP_LATEST_COMMITS, KEEP_LATEST_FILE_VERSIONS, KEEP_LATEST_BY_HOURS.Default is KEEP_LATEST_COMMITS
clean.retain_commits N 30
clean.retain_file_versions N 5
clean.retain_hours N 24
clustering.async.enabled N false
clustering.delta_commits N 4
clustering.plan.partition.filter.mode N NONE 可取值:NONE, RECENT_DAYS, SELECTED_PARTITIONS, DAY_ROLLING
clustering.plan.strategy.class N org.apache.hudi.client.clustering.plan.strategy.FlinkSizeBasedClusteringPlanStrategy
clustering.tasks Y N/A
clustering.schedule.enabled N false
compaction.async.enabled N true
compaction.delta_commits N 5
compaction.delta_seconds N 3600
compaction.max_memory N 100
compaction.schedule.enabled N true
compaction.target_io N 512000
compaction.timeout.seconds N 1200
compaction.trigger.strategy N num_commits 可取值:num_commits, time_elapsed, num_or_time
hive_sync.conf.dir Y N/A
hive_sync.table_properties Y N/A
hive_sync.assume_date_partitioning N false 假定分区为 yyyy/mm/dd 格式
hive_sync.auto_create_db N true 自动创建不存在的数据库
hive_sync.db N default
hive_sync.table N unknown
hive_sync.table.strategy N ALL
hive_sync.enabled N false
hive_sync.file_format N PARQUET
hive_sync.jdbc_url N jdbc:hive2://localhost:10000
hive_sync.metastore.uris N '' Hive Metastore uris
hive_sync.mode N HMS
hive_sync.partition_fields N ''
hive_sync.password N hive
hive_sync.support_timestamp N true
hive_sync.use_jdbc N true
hive_sync.username N hive
hoodie.bucket.index.hash.field N
hoodie.bucket.index.num.buckets N 4
hoodie.datasource.merge.type N payload_combine
hoodie.datasource.query.type N snapshot
hoodie.datasource.write.hive_style_partitioning N false
hoodie.datasource.write.keygenerator.type N SIMPLE
hoodie.datasource.write.partitionpath.field N ''
hoodie.datasource.write.recordkey.field N uuid
hoodie.datasource.write.partitionpath.urlencode N false
hoodie.database.name Y N/A
hoodie.table.name Y N/A
hoodie.datasource.write.keygenerator.class Y N/A
index.bootstrap.enabled N false
index.global.enabled N true
index.partition.regex N *
index.state.ttl N 0.0
index.type N FLINK_STATE
metadata.enabled N false
metadata.compaction.delta_commits N 10
partition.default_name N HIVE_DEFAULT_PARTITION
payload.class N org.apache.hudi.common.model.EventTimeAvroPayload
precombine.field N ts
read.streaming.enabled N false
read.streaming.skip_compaction N false
read.streaming.skip_clustering N false
read.utc-timezone N true
record.merger.impls N org.apache.hudi.common.model.HoodieAvroRecordMerger
record.merger.strategy N eeb8d96f-b1e4-49fd-bbf8-28ac514178e5
table.type N COPY_ON_WRITE 指定表类型,可取:COPY_ON_WRITE 或 MERGE_ON_READ
write.batch.size N 256.0
write.commit.ack.timeout N -1
write.ignore.failed N false
write.insert.cluster N false
write.log.max.size N 1024
write.log_block.size N 128
write.log_block.size N 100 单位:MB
write.operation N upsert
write.precombine N false
write.parquet.block.size N 120
write.rate.limit N 0
write.retry.interval.ms N 2000
write.retry.times N 3
write.sort.memory N 128 单位:MB
write.task.max.size N 1024.0 单位:MB

Write Client Configs

  • Layout Configs

  • Clean Configs

  • Memory Configurations

  • Archival Configs

  • Metadata Configs

  • Consistency Guard Configurations

  • FileSystem Guard Configurations

  • Write Configurations

  • Metastore Configs

  • Key Generator Options

  • Storage Configs

  • Compaction Configs

  • File System View Storage Configurations

  • Clustering Configs

  • Common Configurations

  • Bootstrap Configs

  • Commit Callback Configs

  • Lock Configs

  • Index Configs

Metastore and Catalog Sync Configs

  • Common Metadata Sync Configs

  • Global Hive Sync Configs

  • DataHub Sync Configs

  • BigQuery Sync Configs

  • Hive Sync Configs

Metrics Configs

  • Metrics Configurations for Datadog reporter

  • Metrics Configurations for Amazon CloudWatch

  • Metrics Configurations

  • Metrics Configurations for Jmx

  • Metrics Configurations for Prometheus

  • Metrics Configurations for Graphite

Record Payload Config

  • Payload Configurations
配置项 是否必须 默认值 配置说明
hoodie.compaction.payload.class N org.apache.hudi.common.model.OverwriteWithLatestAvroPayload
hoodie.payload.event.time.field N ts
hoodie.payload.ordering.field N ts

Kafka Connect Configs

  • Kafka Sink Connect Configurations
配置项 是否必须 默认值 配置说明
hadoop.conf.dir Y N/A
hadoop.home Y N/A
bootstrap.servers N bootstrap.servers Kafka 集群的 bootstrap.servers
hoodie.kafka.control.topic N hudi-control-topic
hoodie.meta.sync.classes N org.apache.hudi.hive.HiveSyncTool
hoodie.meta.sync.enable N false
hoodie.meta.sync.enable N org.apache.hudi.schema.FilebasedSchemaProvider
hoodie.kafka.coordinator.write.timeout.secs N 300
hoodie.kafka.compaction.async.enable N true

Amazon Web Services Configs

配置项 是否必须 默认值 配置说明
hoodie.aws.access.key Y N/A AWS access key id
hoodie.aws.secret.key Y N/A AWS secret key
hoodie.aws.session.token N N/A AWS session token

标签:write,Hudi,hive,笔记,sync,学习,datasource,hoodie,Configs
From: https://www.cnblogs.com/aquester/p/17377979.html

相关文章

  • dell笔记本电脑触摸屏黑屏后就失灵,手动重启触摸板
    笔记本电脑触摸屏黑屏后就失灵,通常把屏幕盖子合上,再打开又能使用别人都说可以通过快捷键可以开启和关闭,我的dell电脑为什么就没有。苦恼!没法子啦~手动重启吧 1.找到触摸设备id 2.重启触摸板pnputil/restart-device"HID\DELL0923&Col02\5&1ccbf562&0&0001" 3.也可......
  • vue笔记,七个属性以及代码演示
    v-bind:title="xxx"利用v-bind即可完成,鼠标悬停几秒查看此处动态绑定信息步骤一:官网下载vue.js文件导入到idea对应的文件中并且代码引用这个包步骤二:写一下代码eg.举个例子<divid="app"><spanv-bind:title="message">鼠标悬停几秒查看此处动态绑定信息......
  • 【接口自动化测试】月薪12k必会技术,从0到1学习接口自动化测试,6个操作安排的明明白白
        ​导读:在所有的开发测试中,接口测试是必不可少的一项。有效且覆盖完整的接口测试,不仅能保障新功能的开发质量,还能让开发在修改功能逻辑的时候有回归的能力,同时也是能优雅地进行重构的前提。编写接口测试要遵守哪些原则?测试代码的结构应该是什么样的?接口测试......
  • kubernets学习
    引用:......
  • 戴尔笔记本u盘安装Ubuntu记录
    1.镜像下载www.ubuntu,com2.启动盘制作工具名称:rufus网址:Rufus-轻松创建USB启动盘界面: 3.一些问题(1)安装ubuntu18时安装类型不显示进入BIOS(dell是开机时按F2)的Ssystemconfiguration----sata设置----更改为ACHI—apply保存—exit退出......
  • 消息队列Rabbitmq介绍、rabbitmq安装、基于queue实现生产者消费者、基本使用、消息安
    目录1消息队列Rabbitmq介绍2rabbitmq安装3基于queue实现生产者消费者4基本使用4.1发送者4.2消费者5消息安全(详见笔记)6持久化(详见笔记)7闲置消费(详见笔记)8发布订阅(详见笔记)9发布订阅高级之Routing(按关键字匹配)(详见笔记)1消息队列Rabbitmq介绍#消息队列 -......
  • ZK----框架学习资源
    [转]zk框架的学习之路我用zk有三个多月了,从我第一天接触它我就体会到了它的简单,轻便之处。对于zk来说不用写JavaScript代码也能实现漂亮的界面,主要原因是zk里内嵌了JavaScript代码。 我现在用zk主要做的是基于B/S系统界面,我们能够很好的运用三层架构来进行程序设计。zk是一个时......
  • FreeCodeCamp-通过创作罗斯科绘画学习 CSS 盒子模型
    index.html<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>RothkoPainting</title><linkhref="./styles.css"rel="stylesheet"></hea......
  • Hudi学习笔记(1)
    使用注意从0.10.0版本开始,primaryKey为必须的,不再支持没有主键的表。primaryKey、primaryKey和type均大小写敏感。对于MOR类型的表,preCombineField为必须的。当设置primaryKey、primaryKey或type等hudi配置时,tblproperties优先于options。使用S......
  • 外设驱动库开发笔记53:MAX31856热偶变送器驱动
      在我们的产品中经常有需要温度检测的地方,而热电偶温度检测电路是我们常用的。热电偶温度检测的方法很多,有时出于简单方便的考虑我们会选择热偶温度变送器来实现,这一篇我们就来讨论使用MAX31856热电偶温度变送器实现温度的检测。1、功能概述  MAX31856可以对任何类型热电偶的......