PolarDB这个类型sql为什么并发量不高能把AP节点cpu打的很高呢? SELECT sdt.produce_id, sdt.customer_id, sdt.company_name AS company_name_m, sdt.prefix_domain_name, sdt.products_id , sdt.products_url_name, sdt.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 FROM t_e_all_produce_seller_activity sdt LEFT JOIN ( SELECT stpr.id, stpr.produce_id FROM t_e_seller_tag_produce stpr INNER JOIN t_e_seller_tag stag ON stag.customer_id = 'us20220607140012825' AND IFNULL(stag.is_website_show, '') != '1' AND IFNULL(stag.delflag, '') != '1' WHERE stpr.tag_id = stag.tag_id AND IFNULL(stpr.is_website_show, '') != '1' AND IFNULL(stpr.delflag, '') != '1' ) tagp ON tagp.produce_id = sdt.produce_id WHERE sdt.customer_id = 'us20220607140012825' AND IFNULL(sdt.delflag, '') != '1' AND tagp.id IS NULL ORDER BY sdt.complete_flag DESC, sdt.main_flag DESC, sdt.activity_id DESC, sdt.hot_flag DESC, n_pending_flag DESC, sdt.produce_update_date DESC LIMIT 24;
这个SQL查询语句中包含了多个表的连接和筛选条件,可能会导致查询效率较低。此外,该查询语句中使用了多个IFNULL函数和WHERE子句中的多个条件判断,也会影响查询性能。
为了提高查询效率,可以考虑以下优化措施:
列存节点上的SQL都是并发还行的,单SQL都有可能把CPU用的很满。你们如果没有慢查CPU高可以不用关注。如果有慢查的话就需要升级一下CPU或者使用Serverless动态弹性了。serverless 可以在已购实例上开启,不会出现闪断等可用性影响。开启后,压力上升会自动增加规格,压力下降自动降低规格到原始规格。开启方式可以参考文档:
https://help.aliyun.com/zh/polardb/polardb-for-mysql/user-guide/serverless-enables-auto-scaling-of-read-only-column-store-nodes?spm=a2c4g.11186623.0.0.435a28e30B0TjZ 此回答整理自钉群“PolarDB专家面对面 - HTAP(列存索引)”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云关系型数据库主要有以下几种:RDS MySQL版、RDS PostgreSQL 版、RDS SQL Server 版、PolarDB MySQL版、PolarDB PostgreSQL 版、PolarDB分布式版 。