启动
使用时不同的 Spark
版本启动参数略有区别,详细可以参考 Spark Quick Start 中的详细介绍。
/opt/warehouse/spark/bin/spark-sql --master local[2] \
--jars /opt/warehouse/hudi/spark-avro_2.12-3.4.1.jar \
--jars /opt/warehouse/hudi/hudi-spark3.4-bundle_2.12-0.14.1.jar \
--conf 'spark.serializer=org.apache.spark.serializer.KryoSerializer' \
--conf 'spark.sql.extensions=org.apache.spark.sql.hudi.HoodieSparkSessionExtension' \
--conf 'spark.sql.catalog.spark_catalog=org.apache.spark.sql.hudi.catalog.HoodieCatalog' \
--conf 'spark.kryo.registrator=org.apache.spark.HoodieSparkKryoRegistrar'
Client
用于管理 Hudi 数据集,可以查看提交、文件系统、统计信息等,还支持手动执行压缩、取消压缩等。
$ hudi-cli.sh
----- 链接到某个表,该目录下为 .hoodie 目录
hudi-> connect --path /tmp/hudi_mor_table
----- 查看表的描述信息
hudi-> desc
hudi-> fetch table schema
----- 查看帮助文档,可以跟具体的命令
hudi-> help
----- 查看提交信息,在比较少时可以使用,默认按照时间倒序排列
hudi-> commits show
----- 对提交信息排序
hudi-> commits show --sortBy "Total Bytes Written" --desc true --limit 10
----- 查看写入分区信息
hudi-> commit showpartitions --commit 20240116113420705 --sortBy "Total Bytes Written" --desc true --limit 10
----- 写入到文件级别信息
hudi-> commit showfiles --commit 20240116113420705 --sortBy "Partition Path"
----- 文件系统视图,分区由文件组组成,文件组包含按时间片提交的文件切片组成
hudi-> show fsview all
hudi-> show fsview latest --partitionPath "2018/08/31"
----- 文件统计信息
hudi-> stats filesizes --partitionPath 2016/09/01 --sortBy "95th" --desc true --limit 10
----- 写入耗时
hudi-> stats wa
----- 查看待处理的压缩
hudi-> compactions show all