Hudi安装1.0.6+
# 基于 Ambari 安装 Hudi 服务
Apache Hudi(Hadoop Upserts Deletes and Incrementals)是构建数据湖的核心组件之一,具备:
- ✅ 插入、更新、删除能力;
- ✅ 增量拉取与实时流式写入;
- ✅ 支持 Copy-on-Write 和 Merge-on-Read 存储引擎;
- ✅ 完善的 CLI 与 API 工具链。
Hudi 可作为 Spark/Flink 作业的 Sink 端,同时通过 Hive/Trino/Spark SQL 访问数据,是构建现代数据湖仓架构的关键模块。
# 1. 添加 Hudi 服务
在 Ambari 控制台中点击 Add Service
,进入服务选择界面,勾选 Hudi 后点击下一步:
当前 Hudi 集成版本为 1.1.0,具备完整 CLI 工具与 Spark 引擎兼容模块,支持在 Hadoop 平台上增量写入与流批查询。
提示
该版本适配 Spark 2.4.x ~ 3.5.x,可配合 Hive、Trino 等引擎进行联邦访问。
# 2. 分配 Hudi Client 到目标节点
由于 Hudi 不包含 Master、Worker 类型角色,实际部署仅包括 CLI 工具和 JAR 包,因此只需为各主机分配 Client 即可。
本例中我们将 Client 安装到 hadoop1、hadoop2、hadoop3
三个主机,部署为 全节点 CLI 可用
,以支持后续任意节点执行操作或联调脚本。
注意
未安装 Client 的节点无法使用 CLI,也无法参与 Hudi 表增量写入调度。
# 3. 安装进度追踪与日志查看
点击 Next
,进入服务安装流程:
此阶段主要包括:
- Hudi 客户端包下发;
- 配置文件软链部署;
- 启动脚本配置与权限处理。
笔记
如安装失败,可点击主机列表查看详细日志,常见原因包括 JDK 缺失、磁盘空间不足、YARN 权限错误等。
# 4. 安装完成,查看 Summary 状态
安装完成后,进入 Hudi 服务 Summary 页面:
此时可以确认服务状态为绿色,并且每个节点成功部署了 Client。
# 5. Hudi 安装目录结构说明
查看 /usr/bigtop/current/hudi-client
目录内容,默认包含如下结构:
ls -al /usr/bigtop/current/hudi-client
目录/文件 | 说明 |
---|---|
bin/ | 启动脚本目录,包含 hudi-cli 执行文件 |
lib/ | 所有依赖 JAR,涵盖 Spark/Hudi/ZK |
conf -> /etc/hudi/conf | 配置软链 |
log -> /var/log/hudi | 日志软链 |
hudi-cli-*.jar | CLI 主程序入口 |
该目录结构设计遵循 Bigtop 规范,兼容 Ambari 管理,便于后续监控集成与日志采集。
# 6. 启动 Hudi CLI 并验证输出
执行以下命令启动 CLI:
bash /usr/bigtop/current/hudi-client/bin/hudi-cli
CLI 成功启动后会输出 ASCII Logo、当前 JVM 信息、构建版本、CLI 模式等信息,说明环境运行正常。
你可以尝试在 CLI 中执行如下命令:
hudi-> help
hudi-> connect --path hdfs:///user/hudi/warehouse/
hudi-> table
2
3
CLI 可用于:
- 创建、更新、查询表;
- 查看写入状态;
- 执行 compaction;
- 查看 timeline、metadata 等;
提示
CLI 工具是调试与演练 Hudi 表最直接的方式,也可集成进脚本完成持续写入与自动清理。