开发者社区 > 数据库 > 关系型数据库 > 正文

PolarDB这个类型sql为什么并发量不高能把AP节点cpu打的很高呢?

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;

展开
收起
三分钟热度的鱼 2024-02-01 19:08:45 48 0
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    这个SQL查询语句中包含了多个表的连接和筛选条件,可能会导致查询效率较低。此外,该查询语句中使用了多个IFNULL函数和WHERE子句中的多个条件判断,也会影响查询性能。

    为了提高查询效率,可以考虑以下优化措施:

    1. 对查询结果进行分页处理,避免一次性返回过多数据。
    2. 对查询条件进行优化,减少不必要的条件判断和连接操作。
    3. 对数据库表进行索引优化,提高查询速度。
    4. 考虑使用缓存技术,将部分数据缓存在内存中,减少数据库访问次数。
    5. 对于复杂的查询语句,可以考虑使用存储过程或者视图来简化查询逻辑。
    2024-02-02 10:44:52
    赞同 展开评论 打赏
  • 列存节点上的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(列存索引)”

    2024-02-01 20:44:07
    赞同 展开评论 打赏

阿里云关系型数据库主要有以下几种:RDS MySQL版、RDS PostgreSQL 版、RDS SQL Server 版、PolarDB MySQL版、PolarDB PostgreSQL 版、PolarDB分布式版 。

相关产品

  • 云原生数据库 PolarDB
  • 相关电子书

    更多
    云栖大会:开源 PolarDB 架构演进、关键技术与社区建设 立即下载
    2023云栖大会:和客户一起玩转PolarDB新特性 立即下载
    2023云栖大会:PolarDB for AI 立即下载