MapReduce服务 MRS-index相关配置
index相关配置
参数 |
描述 |
默认值 |
---|---|---|
hoodie.index.class |
用户自定义索引的全路径名,索引类必须为HoodieIndex的子类,当指定该配置时,其会优先于hoodie.index.type配置。 |
"" |
hoodie.index.type |
使用的索引类型,默认为布隆过滤器。可能的选项是[BLOOM | HBASE | GLOBAL_BLOOM | SIMPLE | GLOBAL_SIMPLE | BUCKET | RANGE] 。 布隆过滤器消除了对外部系统的依赖,并存储在Parquet数据文件的页脚中。 注意:
BUCKET、RANGE索引仅支持INSERT、UPSERT、DELETE、COMPACT操作。 |
BLOOM |
hoodie.index.bloom.num_entries |
存储在布隆过滤器中的条目数。 假设maxParquetFileSize为128MB,averageRecordSize为1024B,因此,一个文件中的记录总数约为130K。 默认值(60000)大约是此近似值的一半。 注意:
将此值设置得太低,将产生很多误报,并且索引查找将必须扫描比其所需的更多的文件;如果将其设置得非常高,将线性增加每个数据文件的大小(每50000个条目大约4KB)。 |
60000 |
hoodie.index.bloom.fpp |
根据条目数允许的错误率。 用于计算应为布隆过滤器分配多少位以及哈希函数的数量。通常将此值设置得很低(默认值:0.000000001),在磁盘空间上进行权衡以降低误报率。 |
0.000000001 |
hoodie.bloom.index.parallelism |
索引查找的并行度,其中涉及Spark Shuffle。 默认情况下,根据输入的工作负载特征自动计算的。 |
0 |
hoodie.bloom.index.prune.by.ranges |
为true时,从文件框定信息,可以加快索引查找的速度。 如果键具有单调递增的前缀,例如时间戳,则特别有用。 |
true |
hoodie.bloom.index.use.caching |
为true时,将通过减少用于计算并行度或受影响分区的IO来缓存输入的RDD以加快索引查找。 |
true |
hoodie.bloom.index.use.treebased.filter |
为true时,启用基于间隔树的文件过滤优化。与暴力模式相比,此模式可根据键范围加快文件过滤速度。 |
true |
hoodie.bloom.index.bucketized.checking |
为true时,启用了桶式布隆过滤。这减少了在基于排序的布隆索引查找中看到的偏差。 |
true |
hoodie.bloom.index.keys.per.bucket |
仅在启用bloomIndexBucketizedChecking并且索引类型为bloom的情况下适用。 此配置控制“存储桶”的大小,该大小可跟踪对单个文件进行的记录键检查的次数,并且是分配给执行布隆过滤器查找的每个分区的工作单位。 较高的值将分摊将布隆过滤器读取到内存的固定成本。 |
10000000 |
hoodie.bloom.index.update.partition.path |
仅在索引类型为GLOBAL_BLOOM时适用。 为true时,当对一个已有记录执行包含分区路径的更新操作时,将会导致把新记录插入到新分区,而把原有记录从旧分区里删除。为false时,只对旧分区的原有记录进行更新。 |
true |
hoodie.index.hbase.zkquorum |
仅在索引类型为HBASE时适用,必填选项。要连接的HBase ZK Quorum URL。 |
无 |
hoodie.index.hbase.zkport |
仅在索引类型为HBASE时适用,必填选项。要连接的HBase ZK Quorum端口。 |
无 |
hoodie.index.hbase.zknode.path |
仅在索引类型为HBASE时适用,必填选项。这是根znode,它将包含HBase创建及使用的所有znode。 |
无 |
hoodie.index.hbase.table |
仅在索引类型为HBASE时适用,必填选项。HBase表名称,用作索引。Hudi将row_key和[partition_path, fileID, commitTime]映射存储在表中。 |
无 |
hoodie.bucket.index.num.buckets |
仅在索引类型为BUCKET时适用。Hudi表中每个分区划分桶的个数,每个分区内的数据通过Hash方式放入每个桶内。 注意:
建表或第一次写入数据时设置后不能修改,否则更新数据会存在异常。 MRS 3.2.0及之后版本支持才支持该功能。 |
256 |
hoodie.bucket.index.hash.field |
仅在索引类型为BUCKET时适用。进行分桶时计算Hash值的字段,必须为主键的子集,默认为Hudi表的主键。 说明:
MRS 3.2.0及之后版本支持才支持该功能。 |
无 |
hoodie.range.index.range |
仅在索引类型为RANGE时适用。每个数据文件中存储的记录范围,只适用于主键为自增主键的场景。如设置为100000,则主键为0-99999记录存储到一个数据文件,以此类推后面每100000条记录存储一个数据文件。 注意:
建表或第一次写入数据时设置后不能修改,否则更新数据会存在异常。 |
100000 |
hoodie.check.index.parameter |
是否对数据写入设置的索引参数进行校验。 注意:
不同索引间通常是不兼容的,设置为false,可能会导致数据异常。 MRS 3.2.0及之后版本支持才支持该功能。 |
true |
- MapReduce服务_什么是存算分离_如何配置MRS集群存算分离
- MapReduce服务_什么是MapReduce服务_什么是HBase
- MapReduce服务_如何使用MapReduce服务_MRS集群客户端安装与使用
- MapReduce服务_什么是Hue_如何使用Hue
- MapReduce服务_什么是HetuEngine_如何使用HetuEngine
- MapReduce服务_什么是Kafka_如何使用Kafka
- MapReduce服务_什么是ZooKeeper_如何使用ZooKeeper
- MapReduce服务_什么是HDFS_HDFS特性
- MapReduce服务_什么是ClickHouse_如何使用ClickHouse
- MapReduce服务_什么是Flume_如何使用Flume