加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

MYSQL order by排序导致效率低小优化

发布时间:2022-03-23 18:05:54 所属栏目:编程 来源:互联网
导读:有一个主表left join 同一个小表两次分页语句,因为order by 导致执行时做排序,从执行计划中Using filesort ,以及profile中creating sort index 耗时可以看出。 从trace文件可以看出filesort的计算: join_execution: { select#: 1, steps: [ { filesort_i
     有一个主表left join 同一个小表两次分页语句,因为order by 导致执行时做排序,从执行计划中Using filesort ,以及profile中creating sort index 耗时可以看出。
  
     从trace文件可以看出filesort的计算:
 
"join_execution": {
        "select#": 1,
        "steps": [
          {
            "filesort_information": [
              {
                "direction": "desc",
                "table": "`topxxx` `t`",
                "field": "create_date"
              }
            ] /* filesort_information */,
            "filesort_priority_queue_optimization": {
              "limit": 20,
              "rows_estimate": 2302749,
              "row_size": 264,
              "memory_available": 4194304,
              "chosen": true
            } /* filesort_priority_queue_optimization */,
            "filesort_execution": [
            ] /* filesort_execution */,
            "filesort_summary": {
              "rows": 21,
              "examined_rows": 216594,
              "number_of_tmp_files": 0,
              "sort_buffer_size": 5712,
              "sort_mode": "<sort_key, rowid>"
            } /* filesort_summary */
          }
        ] /* steps */
      } /* join_execution */
    }
后面通过索引加入排序字段后减去排序操作,排序字段放在索引的最前面。
 
create index idx_topxxx1 on topic (create_date desc,is_del,is_en);
 
trace 中可以看出排序使用了索引。
 
            "reconsidering_access_paths_for_index_ordering": {
              "clause": "ORDER BY",
              "index_order_summary": {
                "table": "`topic` `t`",
                "index_provides_order": true,
                "order_direction": "desc",
                "index": "idx_topxxx1",
                "plan_changed": true,
                "access_type": "index"
              } /* index_order_summary */
            } /* reconsidering_access_paths_for_index_ordering */
          },
          {
以此记录。

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读