数据湖Hudi-5-Hudi集成Spark-SparkSQL
- SparkSQL操作Hudi数据
- 1.环境准备
- 2.创建表格
- 3.插入数据
- 4.查询数据
- 1.时间旅行查询
- 5.更新数据
- 1.update
- 2.MergeInto
- 6.删除数据
- 7.覆盖数据
- 8.修改表结构(Alter Table)
- 9.修改分区
- 10.存储过程(Procedures)
SparkSQL操作Hudi数据
1.环境准备
- hive元数据服务需要是外置的并且要启动起来。
- 查看hive元数据服务是否为外置,需要看hive配置文件“hive-site.xml” 的配置是否是依托于外界环境。
2.创建表格
- 1.建表参数
- 2.创建非分区表
- 3.创建分区表
- 4.在已有的hudi表上创建新表
- 5.通过CTAS(Create Table As Select)建表
- 为了提高向hudi表加载数据的性能,CTAS使用批量插入作为写操作。
3.插入数据
使用 bulk_insert插入数据的时候,一般是在历史数据导入的时候使用。
4.查询数据
1.时间旅行查询
- 时间旅行查询要求的版本:Hudi从0.9.0开始支持,并且Spark SQL要求Spark版本为3.2以上。
5.更新数据
1.update
2.MergeInto
- 1.向非分区表插入数据
- merge into的时候,两个表进行关联,后面可以写判断匹配条件,匹配上了就进行更新操作,没匹配上条件,就进行插入操作。
- 2.向分区表插入数据
- 准备数据,创建表格并插入数据
6.删除数据
7.覆盖数据
8.修改表结构(Alter Table)
- 1.语法:
- 相关案例:
9.修改分区
- 1.相关语法
- 2.案例
10.存储过程(Procedures)
- 1.语法
- 2.案例实践