云服务器内容精选

  • 物化视图改写能力支持范围 物化视图支持的类型 BOOLEAN、DECIMAL、DOUBLE、REAL/FLOAT、INT、BIGINT、SMALLINT、TINYINT、CHAR/VARCHAR、DATE、TIME、TIMESTAMP、INTERVAL YEAR TO MONTH、INTERVAL DAY TO SECOND、BINARY/VARBINARY、UUID。 物化视图改写支持的函数 转换函数:只支持CAST函数。 字符串函数:支持所有字符串函数,包括char_length、character_length、chr、codepoint、decode、encode、find_in_set、format_number、locate、hamming_distance、instr、levenshtein、levenshtein_distance、ltrim、lpad、octet_length、position、quote、repeat2。 数学运算符:支持所有数学运算符。 聚合函数:支持的聚合函数包括 COUNT、SUM、MIN、MAX、AVG、LEAD、LAG、FIRST_VALUE、LAST_VALUE、COVAR_POP、COVAR_SAMP、REGR_SXX、REGR_SYY、STDDEV_POP、STDDEV_SAMP、VAR_POP、VAR_SAMP、ROW_NUMBER、RANK、PERCENT_RANK、DENSE_RANK、CUME_DIST。 以下场景,物化视图不支持对包含了函数的SQL查询进行改写: SQL中包含无参函数 SQL中包含了HetuEngine支持的会根据参数的类型获得不同类型的返回值的函数 SQL中函数存在嵌套使用,或者是使用的函数会发生异常导致重写失败的函数 物化视图创建语句改写不支持二段式表名,支持一段式和三段式表名。 如支持改写表名为“hive.mvschema.t1”和“t1”,不支持改写表名为“mvschema.t1”。
  • 关键技术和优势 无单点瓶颈:HSFabric可进行水平扩展,多通道并行传输,速率最大化,跨地域延迟不再成为瓶颈。 更好地计算资源利用:将数据压缩,序列化的任务下推到Worker并行计算。 高效序列化:优化数据序列化格式,同等数据量级下,更低的数据传输量。 流式传输:基于HTTP 2.0 stream,保证HTTP协议通用性的同时,减少大量数据传输中RPC 重复调用。 断点续传:防止数据传输过程中连接异常断开后重传大量数据。 流量管控:支持按地区限制数据传输所占用的网络带宽,避免在跨地域有限带宽场景下因流量独占而影响其他业务的正常使用。
  • 操作步骤 以客户端安装用户登录HetuEngine服务客户端所在节点,切换到客户端安装目录。 cd /opt/client 执行以下命令配置环境变量。 source bigdata_env 根据集群认证模式,完成HetuEngine客户端登录。 安全模式:执行以下命令,完成用户认证并登录HetuEngine客户端。 kinit hetu_test hetu-cli --catalog hive --tenant default --schema default 普通模式:执行以下命令,登录HetuEngine客户端。 hetu-cli --catalog hive --tenant default --schema default --user hetu_test hetu_test是一个至少具备“--tenant”指定租户角色的业务用户,且不能是操作系统用户。 参数说明: --catalog:(可选)指定的数据源名称。 --tenant:(可选)指定集群启动的租户资源队列,不指定为租户的默认队列。使用此参数时,业务用户需要具有该租户对应角色的权限。MRS 3.3.0及以后版本是否可选根据如下判断: 可选:未启用租户的严格校验模式。 必选:启用了租户的严格校验模式。 --schema:(可选)指定要访问数据源下的schema名称。 --user:(普通模式下必选)指定要登录客户端执行业务的用户名称,该用户至少需要具有“--tenant”指定队列的相应角色。 首次登录客户端需要启动后台HetuEngine集群,大约需等待120秒,可以进入客户端界面。 支持SQL语法,兼容开源openLooKeng 1.2.0版本SQL语法。 其他参数可以执行hetu-cli --help查看。
  • 使用介绍 表2 物化视图使用介绍 阶段 说明 参考章节 物化视图SQL示例 介绍物化视图支持的操作,包括创建物化视图、列举物化视图、查询物化视图等 物化视图SQL示例 配置物化视图改写能力 开启物化视图能力,提高查询的响应效率 配置物化视图改写能力 配置物化视图推荐能力 自动学习并推荐对业务最有价值的物化视图SQL,使在线查询效率获得倍数提升,同时有效降低系统负载压力 配置物化视图推荐能力 配置物化视图缓存能力 可将多次执行并改写后的SQL保存到缓存中,再次执行这条SQL时会直接从缓存中获取改写后的SQL,而不是重新对SQL进行改写,提高查询效率 配置物化视图缓存能力 配置物化视图有效期与数据刷新 设置物化视图的有效期,当前系统只会使用有效期内的物化视图进行自动改写 设置数据定期更新,可定时手动刷新或自动刷新物化视图 配置物化视图的有效期与数据刷新能力 配置智能物化视图 提供自动化物化视图的创建,无需手动执行SQL创建物化视图(推荐使用) 配置智能物化视图能力 查看物化视图自动化任务记录 看任务执行情况,帮助评估集群运行健康状况 查看物化视图自动化任务
  • 背景介绍 HetuEngine具备物化视图能力。在实际运用中,将高频访问的SQL查询和有高耗时的算子(连接, 聚合等算子)的SQL通过建立物化视图进行预计算,然后在查询的SQL中将能匹配到物化视图的查询或者子查询转换为物化视图,避免了数据的重复计算,这种情况下往往能较大地提高查询的响应效率。 物化视图通常基于对数据表进行聚合和连接的查询结果创建。 物化视图支持“查询重写”,这是一种优化技术,即将基于原始表编写的查询语句转换为查询一个或多个物化视图语句的等效请求。如下物化视图的SQL示例: create materialized view mv.default.mv1 with(storage_table='hive.default.mv1') AS select id from hive.mvschema.t1; 该物化视图实际数据的存储表为“hive.default.mv1”,在查询重写时,查询SQL“select id from hive.mvschema.t1”会被重写成查询物化视图的表,即“select id from hive.default.mv1”。
  • 权限介绍 物化视图权限如表1。物化视图权限控制依赖Ranger,如果关闭Ranger鉴权会带来权限失效的风险。 表1 HetuEngine物化视图权限介绍 操作 catalog mv权限 物化视图存储表的权限 原始物理表的权限 创建物化视图 建表权限 NA 对应列的查询权限 删除物化视图 删除表权限 NA NA 刷新物化视图 表的更新权限 NA 对应列的查询权限 使用物化视图重写查询语句 NA NA 对应列的查询权限 使用物化视图重写查询语句的执行计划(EXPLAIN) NA 对应列的查询权限 对应列的查询权限 查询物化视图 对应列的查询权限 NA NA 物化视图和非物化视图的物理表联合查询 对应列的查询权限 NA 对应列的查询权限 查看物化视图 NA NA NA 查看物化视图的创建语句 表的Show权限 表的Show权限 NA
  • 操作场景 安全模式的集群,在使用HetuEngine服务前,需集群管理员创建用户并指定其操作权限以满足业务使用需求。 HetuEngine用户分为管理员用户和普通用户,系统默认的HetuEngine管理员用户组为“hetuadmin”,HetuEngine普通用户对应用户组为“hetuuser”。 关联了“hetuadmin”用户组的用户可获得HetuEngine的HSConsole WebUI界面和HetuEngine计算实例WebUI的运维管理员权限。 关联了“hetuuser”用户组的用户可获得SQL执行权限。 启用了Ranger鉴权时,如果用户创建后需要继续为用户配置操作数据源的数据库、表、列的管理权限,请参考添加HetuEngine的Ranger访问权限策略。