检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
PLAN TRACE使用介绍 该特性是数据库内核开发人员对慢SQL深度分析使用的特性,不建议非内核开发人员使用。 该特性开启后,会在执行DML期间记录优化器相关信息到系统表中,这样会导致读事务变成写事务,从而导致要求必须在读事务里执行的函数无法执行,例如函数pg_create_l
CREATE MODEL 功能描述 训练机器学习模型并保存模型。 注意事项 当前版本形态暂不支持模型训练功能,不支持使用该语法。 父主题: C
Hint查询 根据指定的hint规则,对查询的结果进行优化。 以下示例作为一个典型的hint查询,展示在指定的表中根据具体的hint规则对查询的结果进行优化。 --创建表。 gaussdb=# CREATE TABLE t1(c1 int, c2 int, c3 int); gaussdb=#
GaussDB是基于代价估算生成的最优执行计划。优化器需要根据analyze收集的统计信息进行行数估算和代价估算,因此统计信息对优化器行数估算和代价估算起着至关重要的作用。通过analyze收集全局统计信息,主要包括:pg_class表中的relpages和reltuples;pg_stati
GaussDB是基于代价估算生成的最优执行计划。优化器需要根据analyze收集的统计信息进行行数估算和代价估算,因此统计信息对优化器行数估算和代价估算起着至关重要的作用。通过analyze收集全局统计信息,主要包括:pg_class表中的relpages和reltuples;pg_stati
GaussDB是基于代价估算生成的最优执行计划。优化器需要根据analyze收集的统计信息行数估算和代价估算,因此统计信息对优化器行数估算和代价估算起着至关重要的作用。通过analyze收集全局统计信息,主要包括:pg_class表中的relpages和reltuples;pg_statis
GaussDB是基于代价估算生成的最优执行计划。优化器需要根据analyze收集的统计信息进行行数估算和代价估算,因此统计信息对优化器行数估算和代价估算起着至关重要的作用。通过analyze收集全局统计信息,主要包括:pg_class表中的relpages和reltuples;pg_stati
GaussDB是基于代价估算生成的最优执行计划。优化器需要根据analyze收集的统计信息进行行数估算和代价估算,因此统计信息对优化器行数估算和代价估算起着至关重要的作用。通过analyze收集全局统计信息,主要包括:PG_CLASS系统表中的relpages和reltuples,pg_stat
在数据库中,需要在不同版本之间兼容,可以指导优化器生成指定计划。内核在生成执行计划的同时,可以生成Outline。同时优化器能够使用Outline对计划进行控制,Outline是计划管理的核心前提能力。 Outline Hint是优化器为了完全复现某一计划而生成的一组hint信息
GaussDB是基于代价估算生成的最优执行计划。优化器需要根据analyze收集的统计信息进行行数估算和代价估算,因此统计信息对优化器行数估算和代价估算起着至关重要的作用。通过ANALYZE收集全局统计信息,主要包括:PG_CLASS系统表中的relpages和reltuples,pg_stat
测功能时的数据表,记录机器学习模型的配置、训练结果、功能、对应系统函数、训练历史等相关信息。 表1 GS_OPT_MODEL字段 名称 类型 描述 oid oid 数据库对象id。 template_name name 机器学习模型的模板名,决定训练和预测调用的函数接口,目前只实现了rlstm,方便后续扩展。
ne执行计划时间预测功能时的数据表,记录机器学习模型的配置、训练结果、功能、对应系统函数、训练历史等相关信息。 表1 GS_OPT_MODEL字段 名称 类型 描述 template_name name 机器学习模型的模板名,决定训练和预测调用的函数接口,目前只实现了rlstm,方便后续扩展。
ne执行计划时间预测功能时的数据表,记录机器学习模型的配置、训练结果、功能、对应系统函数、训练历史等相关信息。 表1 GS_OPT_MODEL字段 名称 类型 描述 template_name name 机器学习模型的模板名,决定训练和预测调用的函数接口,目前只实现了rlstm,方便后续扩展。
查询改写的Hint 功能描述 优化器支持一系列查询改写规则,可以对SQL语句进行等价的逻辑改写,从而生成更好的执行计划。但在一些场景下,用户并不希望改写SQL语句、或者优化器的改写会导致计划跳变,对于这些特定的场景,需要能够使用hint对改写规则进行控制,让优化器按照特定的方式进行改写
查询改写的Hint 功能描述 优化器支持一系列查询改写规则,可以对SQL语句进行等价的逻辑改写,从而生成更好的执行计划。但在一些场景下,用户并不希望改写SQL语句、或者优化器的改写会导致计划跳变,对于这些特定的场景,需要能够使用hint对改写规则进行控制,让优化器按照特定的方式进行改写
约束设计 DEFAULT和NULL约束 【建议】如果能够从业务层面补全字段值,那么,就不建议使用DEFAULT约束,避免数据加载时产生不符合预期的结果。 【建议】给明确不存在NULL值的字段加上NOT NULL约束,优化器会在特定场景下对其进行自动优化。 【建议】给可以显式命名的约束显式命名。除了NOT
约束设计 DEFAULT和NULL约束 【建议】如果能够从业务层面补全字段值,那么,就不建议使用DEFAULT约束,避免数据加载时产生不符合预期的结果。 【建议】给明确不存在NULL值的字段加上NOT NULL约束,优化器会在特定场景下对其进行自动优化。 【建议】给可以显式命名的约束显式命名。除了NOT
DEFAULT和NULL约束 如果能够从业务层面补全字段值,那么,不建议使用DEFAULT约束,避免数据加载时产生不符合预期的结果。 给明确不存在NULL值的字段加上NOT NULL约束,优化器会在特定场景下对其进行自动优化。 给可以显式命名的约束显式命名。除了NOT NULL和DEFAULT约束外,其他约束都可以显式命名。
DEFAULT和NULL约束 如果能够从业务层面补全字段值,那么,不建议使用DEFAULT约束,避免数据加载时产生不符合预期的结果。 给明确不存在NULL值的字段加上NOT NULL约束,优化器会在特定场景下对其进行自动优化。 给可以显式命名的约束显式命名。除了NOT NULL和DEFAULT约束外,其他约束都可以显式命名。
DEFAULT和NULL约束 如果能够从业务层面补全字段值,那么,不建议使用DEFAULT约束,避免数据加载时产生不符合预期的结果。 给明确不存在NULL值的字段加上NOT NULL约束。优化器会在特定场景下对其进行自动优化。 给可以显式命名的约束显式命名。除了NOT NULL和DEFAULT约束外,其他约束都可以显式命名。