更新时间:2024-07-24 GMT+08:00
配置HetuEngine物化视图的有效期与数据刷新能力
物化视图的有效期
创建物化视图的“mv_validity”字段为物化视图的有效期,HetuEngine只会使用有效期内的物化视图进行自动改写。
物化视图的数据刷新
如果需要数据定期更新,需要定时刷新物化视图,可以使用如下两种方式实现:
- 手动刷新物化视图
参考快速使用HetuEngine访问Hive数据源在HetuEngine客户端执行refresh materialized view <mv name>,或者在用户的业务程序通过JDBC驱动执行refresh materialized view <mv name>进行手动更新。
- 自动刷新物化视图
- 如果要启动物化视图的自动刷新能力,必须存在一个被设置为维护实例的计算实例,设置维护实例可参考配置HetuEngine维护实例。
- 使用“create materialized view”创建具备自动刷新的物化视图。
- 如果物化视图过多,可能会导致物化视图在刷新的等待队列中等待时间过长而过期。
- 自动刷新功能不会自动刷新状态为disable的物化视图。
查询外部Hive数据源使用自动刷新物化视图注意事项
维护实例默认使用HetuEngine内置用户hetuserver/hadoop.<系统域名>作为执行物化视图自动刷新的用户, 当创建物化视图语句查询外部Hive数据源,且该数据源已开启数据源鉴权时,需修改执行自动刷新的用户,修改方法如下:
- 对端集群是否已安装HetuEngine服务。
- 准备系统用于自动刷新的用户。
- 使用HetuEngine管理员用户登录FusionInsight Manager页面。
- 选择“集群 > 服务 > HetuEngine > 配置 > 全部配置”,进入HetuEngine服务配置页面。
- 搜索“jobsystem.customized.properties”,添加用户自定义配置名称为“hetuserver.engine.jobsystem.inner.principal”,值为如下内容,添加完成后单击“保存”,根据界面提示保存配置。
- 对端集群已安装HetuEngine服务:值为“hetuserver”。
- 对端集群未安装HetuEngine服务:值为2.a创建的用户名。
- 单击“实例”,勾选所有HSBroker实例,选择“更多 > 重启实例”,根据界面提示重启HSBroker实例。
- 单击“概览”,在“基本信息”区域单击“HSConsole WebUI”后的链接,进入HSConsole界面。在“计算实例”页签,找到维护实例,单击“操作”列的“重启”根据界面提示重启维护实例。
在计算实例的“实例名”列中,存在图标的即为维护实例,也可以通过配置HetuEngine维护实例章节确认维护实例。
父主题: 配置HetuEngine物化视图