PolarDB产品使用合集之优化器对索引的阈值一般是多少

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
简介: PolarDB是阿里云推出的一种云原生数据库服务,专为云设计,提供兼容MySQL、PostgreSQL的高性能、低成本、弹性可扩展的数据库解决方案,可以有效地管理和优化PolarDB实例,确保数据库服务的稳定、高效运行。以下是使用PolarDB产品的一些建议和最佳实践合集。

题一:PolarDB行列存节点的路由不是通过proxy路由的 是节点内部的路由吗?


PolarDB行列存节点的路由不是通过proxy路由的 是节点内部的路由吗?


参考回答:

proxy 来路由的。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/584094


题二:开启列存节点没开启行存支持 PolarDB请求会回退到行存节点执行吗?


下面这种语法如果对应的语句字段没加列存的话 我请求路由到列存节点了 开启列存节点没开启行存支持 PolarDB请求会回退到行存节点执行吗?HINT 列存执行:/+ SET_VAR(cost_threshold_for_imci=0) SET_VAR(imci_ap_threshold=0) /

HINT 行存执行:/+ SET_VAR(use_imci_engine=OFF) /


参考回答:

集群地址的话,现在都是默认先到行存节点,如果决定走列存再路由到列存节点。 你这种场景下无法列存执行,会直接在行存节点执行,HINT不会起作用的。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/584093


问题三:PolarDB这个sql行存和列存性能差别好大 ,为什么?


PolarDB这个sql行存和列存性能差别好大 ,为什么? 行存24 rows in set (0.03 sec) 走列存 24 rows in set (4.32 sec)

SELECT

sdt.produce_id,

sdt.customer_id,

sel.company_name AS company_name_m,

sel.prefix_domain_name,

sdt.products_id,

sdt.products_name_en,

sdt.products_url_name,

SUBSTR(sdt.category_id, 1, 3) AS category_id_lv1,

sdt.produce_cas_no AS cas_no,

sdt.produce_name,

sdt.produce_url_name,

sdt.goods_picture_s,

sdt.goods_picture_m AS goods_picture,

sdt.goods_picture_b,

sdt.complete_flag,

sdt.hot_flag,

sdt.main_flag,

sdt.grade_name,

sdt.content,

sdt.package_name,

sdt.n_price_type,

sdt.n_price_trade_term_type,

sdt.n_price_trade_term_text,

sdt.n_price,

sdt.n_price_unit,

sdt.n_price_currency,

sdt.n_price_currency_symbol,

CASE

WHEN CEILING(IFNULL(sdt.n_min_price, 0)) = 0 THEN '0'

WHEN sdt.n_price_end_date < CURRENT_DATE() THEN '0'

ELSE '1'

END AS n_pending_flag,

sdt.activity_id,

sdt.activity_type,

sdt.a_price_trade_term_type,

sdt.a_price_trade_term_text,

sdt.a_price,

sdt.a_price_unit,

sdt.a_price_currency,

sdt.a_price_currency_symbol,

sdt.n_price_loading_port_name,

sdt.brand_name,

CASE

WHEN IFNULL(sel.company_type, '') = '' THEN ''

ELSE CONCAT(

'typedefine.VERIFICATION_COMPANY_TYPE.',

sel.company_type

)

END AS company_type_m,

sel.country_name AS country_name_m

FROM

t_e_all_produce_v1 sdt STRAIGHT_JOIN t_e_all_seller_v1 sel ON sdt.customer_id = sel.customer_id

WHERE

sdt.customer_id = 'us20231121102443902'

AND sdt.delflag = '0'

AND sel.delflag = '0'

ORDER BY

sdt.complete_flag DESC,

sdt.main_flag DESC,

sdt.activity_id DESC,

sdt.hot_flag DESC,

sdt.produce_update_date DESC

LIMIT

1176, 24;


参考回答:

这个是因为 ORDER BY LIMIT 的执行效率取决于数据分布和条件。在行存是按照顺序去扫描数据的,如果前面的数据满足条件的多就直接返回了,效率很高;如果满足条件的数据都在顺序的最末尾,就会执行很长时间。所以优化器估算的代价和实际执行的时间会有不准的情况

这个特定条件,你可以通过 HINT 去指定行存或者列存执行。后续8.0.2会针对这种场景发布动态执行的能力,能够自动解决这个问题 。HINT 列存执行:/+ SET_VAR(cost_threshold_for_imci=0) SET_VAR(imci_ap_threshold=0) /

HINT 行存执行:/+ SET_VAR(use_imci_engine=OFF) /


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/584092


问题四:优化器对索引一般会有一个阈值,这个PolarDB这个阈值是多少,可调节吗?


优化器对索引一般会有一个阈值,如果超过阈值可能会认为全表扫描代价更小,这个PolarDB这个阈值是多少,可调节吗?


参考回答:

优化器选索引时一般是根据代价估算的,选择代价相对最小的,如果走主键索引/全表扫描的代价低于二级索引加回表的代价,会选择主键索引/全表扫描。推荐您一个Outline图形化工具https://zhuanlan.zhihu.com/p/662080419?utm_psn=1720378894861836288


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/584091


问题五:PolarDB控制台这个位置调整并行度需要新建连接才生效吗?


PolarDB控制台这个位置调整并行度需要新建连接才生效吗?


参考回答:

是的,新建链接才生效。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/584090

相关实践学习
跟我学:如何一键安装部署 PolarDB-X
《PolarDB-X 动手实践》系列第一期,体验如何一键安装部署 PolarDB-X。
相关文章
|
13天前
|
DataWorks 安全 关系型数据库
DataWorks产品使用合集之使用Flink CDC读取PostgreSQL数据时如何指定编码格式
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
17天前
|
弹性计算 关系型数据库 Serverless
PolarDB产品使用合集之只读结点的上下限 0 ~ 7 ,指的是如果不触发伸缩,就不会有serverless增加的只读结点
PolarDB是阿里云推出的一种云原生数据库服务,专为云设计,提供兼容MySQL、PostgreSQL的高性能、低成本、弹性可扩展的数据库解决方案,可以有效地管理和优化PolarDB实例,确保数据库服务的稳定、高效运行。以下是使用PolarDB产品的一些建议和最佳实践合集。
235 10
|
12天前
|
关系型数据库 数据管理 数据库
数据管理DMS产品使用合集之如何极速恢复RDS(关系型数据库服务)中的数据表
阿里云数据管理DMS提供了全面的数据管理、数据库运维、数据安全、数据迁移与同步等功能,助力企业高效、安全地进行数据库管理和运维工作。以下是DMS产品使用合集的详细介绍。
|
12天前
|
存储 算法 数据处理
惊人!PolarDB-X 存储引擎核心技术的索引回表优化如此神奇!
【6月更文挑战第11天】PolarDB-X存储引擎以其索引回表优化技术引领数据库发展,提升数据检索速度,优化磁盘I/O,确保系统在高并发场景下的稳定与快速响应。通过示例代码展示了在查询操作中如何利用该技术高效获取结果。索引回表优化具备出色性能、高度可扩展性和适应性,为应对大数据量和复杂业务提供保障,助力企业与开发者实现更高效的数据处理。
|
13天前
|
运维 Cloud Native 关系型数据库
云原生数据仓库AnalyticDB产品使用合集之PostgreSQL版是否直接支持实时物化视图
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
17天前
|
存储 关系型数据库 分布式数据库
PolarDB产品使用合集之计算包是用来干什么的
PolarDB是阿里云推出的一种云原生数据库服务,专为云设计,提供兼容MySQL、PostgreSQL的高性能、低成本、弹性可扩展的数据库解决方案,可以有效地管理和优化PolarDB实例,确保数据库服务的稳定、高效运行。以下是使用PolarDB产品的一些建议和最佳实践合集。
243 7
|
17天前
|
SQL 关系型数据库 Serverless
PolarDB产品使用合集之集群配置主从1~16pcu,比如innodb_buffer_pool_size,另外线上innodb_buffer_pool_size配置里面是在变动的,该怎么配置
PolarDB是阿里云推出的一种云原生数据库服务,专为云设计,提供兼容MySQL、PostgreSQL的高性能、低成本、弹性可扩展的数据库解决方案,可以有效地管理和优化PolarDB实例,确保数据库服务的稳定、高效运行。以下是使用PolarDB产品的一些建议和最佳实践合集。
|
16天前
|
关系型数据库 MySQL 分布式数据库
PolarDB产品使用合集之polardb支持透明数据加密TDE吗
PolarDB是阿里云推出的一种云原生数据库服务,专为云设计,提供兼容MySQL、PostgreSQL的高性能、低成本、弹性可扩展的数据库解决方案,可以有效地管理和优化PolarDB实例,确保数据库服务的稳定、高效运行。以下是使用PolarDB产品的一些建议和最佳实践合集。
PolarDB产品使用合集之polardb支持透明数据加密TDE吗
|
16天前
|
关系型数据库 MySQL 分布式数据库
PolarDB产品使用合集之PolarDB-X是否支持MySQL的WITH AS语法
PolarDB是阿里云推出的一种云原生数据库服务,专为云设计,提供兼容MySQL、PostgreSQL的高性能、低成本、弹性可扩展的数据库解决方案,可以有效地管理和优化PolarDB实例,确保数据库服务的稳定、高效运行。以下是使用PolarDB产品的一些建议和最佳实践合集。
|
16天前
|
关系型数据库 分布式数据库 数据库
PolarDB产品使用合集之诊断内核问题时,除了增加日志还有什么诊断手段
PolarDB是阿里云推出的一种云原生数据库服务,专为云设计,提供兼容MySQL、PostgreSQL的高性能、低成本、弹性可扩展的数据库解决方案,可以有效地管理和优化PolarDB实例,确保数据库服务的稳定、高效运行。以下是使用PolarDB产品的一些建议和最佳实践合集。

热门文章

最新文章