
# index相关配置
| 参数                                       | 描述                                                                                                                                                                                                                                                             | 默认值         |
|:---|:---|:---|
| hoodie.index.class                       | 用户自定义索引的全路径名，索引类必须为HoodieIndex的子类，当指定该配置时，其会优先于hoodie.index.type配置。                                                                                                                                                                                            | ""          |
| hoodie.index.type                        | 使用的索引类型，默认为布隆过滤器。可能的选项是\[BLOOM \| HBASE \| GLOBAL_BLOOM \| SIMPLE \| GLOBAL_SIMPLE\] 。 布隆过滤器消除了对外部系统的依赖，并存储在Parquet数据文件的页脚中。                                                                                                                                   | 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\]映射存储在表中。                                                                                                                                                                 | 无           |
   
