日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

查看列存索引構建的執行進度

本文介紹當操作大表或遇到執行時間較長的DDL語句時,如何在列存索引(IMCI)和InnoDB兩種場景下查看DDL語句的執行速度和構建進度。

列存索引(IMCI)場景

您可以在對應的表中查看您需要的信息:

  • INFORMATION_SCHEMA.IMCI_INDEXES表中查看索引的狀態信息;

  • INFORMATION_SCHEMA.IMCI_INDEX_STATS表中查看索引的寫入速度;

  • INFORMATION_SCHEMA.IMCI_ASYNC_DDL_STATS表中查看列存索引從行存恢復數據或者通過異步DDL構建列存索引數據的過程,主要用于查看構建中的執行速度和任務進度。已完成數據構建的任務會在完成構建后的5~10分鐘后被清理掉,如果需要查看完整的索引狀態信息,您可以在INFORMATION_SCHEMA.IMCI_INDEXES表中查看。

    • PolarDB MySQL版企業版的集群版本為8.0.1.1.34及以下或8.0.2.2.15及以下時,INFORMATION_SCHEMA.IMCI_ASYNC_DDL_STATS表結構如下:

      CREATE TABLE: CREATE TEMPORARY TABLE `IMCI_ASYNC_DDL_STATS` (
        `SCHEMA_NAME` varchar(193) NOT NULL DEFAULT '',     -- 庫名
        `TABLE_NAME` varchar(193) NOT NULL DEFAULT '',      -- 表名
        `CREATED_AT` varchar(64) NOT NULL DEFAULT '',       -- 任務創建時間戳
        `STARTED_AT` varchar(64) NOT NULL DEFAULT '',       -- 任務開始執行時間戳
        `FINISHED_AT` varchar(64) NOT NULL DEFAULT '',      -- 任務開始結束時間戳
        `STATUS` varchar(128) NOT NULL DEFAULT '',          -- 狀態
        `APPROXIMATE_ROWS` bigint(8) NOT NULL DEFAULT '0',  -- 預估基線數據行數
        `SCANNED_ROWS` bigint(8) NOT NULL DEFAULT '0',      -- 已掃描行數,實際行數可大于預估行數
        `AVG_SPEED` int(4) NOT NULL DEFAULT '0',            -- 任務開始后的平均速度,單位行每秒
        `SPEED_LAST_SECOND` int(4) NOT NULL DEFAULT '0',    -- 前一秒速度,單位行每秒
        `ESTIMATE_SECOND` bigint(8) NOT NULL DEFAULT '0'    -- 預計剩余時間,單位秒
      ) ENGINE=MEMORY DEFAULT CHARSET=utf8
    • PolarDB MySQL版企業版的集群版本為8.0.1.1.35及以上或8.0.2.2.16及以上時,INFORMATION_SCHEMA.IMCI_ASYNC_DDL_STATS表結構如下:

      Create Table: CREATE TEMPORARY TABLE `IMCI_ASYNC_DDL_STATS` (
        `SCHEMA_NAME` varchar(193) NOT NULL DEFAULT '',     -- 庫名
        `TABLE_NAME` varchar(193) NOT NULL DEFAULT '',      -- 表名
        `CREATED_AT` varchar(64) NOT NULL DEFAULT '',       -- 任務創建時間戳
        `STARTED_AT` varchar(64) NOT NULL DEFAULT '',       -- 任務開始執行時間戳
        `FINISHED_AT` varchar(64) NOT NULL DEFAULT '',      -- 任務開始結束時間戳
        `STATUS` varchar(128) NOT NULL DEFAULT '',          -- 狀態
        `APPROXIMATE_ROWS` bigint(8) NOT NULL DEFAULT '0',  -- 預估基線數據行數
        `SCANNED_ROWS` varchar(128) NOT NULL DEFAULT '',    -- 已掃描行數及百分比,實際行數可大于預估行數
        `SCAN_SECOND` bigint(8) NOT NULL DEFAULT '0',       -- 掃描已執行秒數
        `SORT_ROUNDS` bigint(8) NOT NULL DEFAULT '0',       -- 排序輪次,僅適用于帶排序鍵場景
        `SORT_SECOND` bigint(8) NOT NULL DEFAULT '0',       -- 排序已執行秒數,僅適用于帶排序鍵場景
        `BUILD_ROWS` varchar(128) NOT NULL DEFAULT '',      -- 排序結束寫入行數及百分比,僅適用于帶排序鍵場景
        `BUILD_SECOND` bigint(8) NOT NULL DEFAULT '0',      -- 排序結束寫入執行秒數,僅適用于帶排序鍵場景
        `AVG_SPEED` int(4) NOT NULL DEFAULT '0',            -- 任務開始后的平均速度,單位行每秒
        `SPEED_LAST_SECOND` int(4) NOT NULL DEFAULT '0',    -- 前一秒速度,單位行每秒,適用于掃描階段和排序寫入階段
        `ESTIMATE_SECOND` bigint(8) NOT NULL DEFAULT '0'    -- 預計剩余時間,單位秒,適用于掃描階段和排序寫入階段
      ) ENGINE=MEMORY DEFAULT CHARSET=utf8

      其中,前一秒速度SPEED_LAST_SECOND容易受到系統資源以及任務并發程度影響,可能存在一定的波動。預計剩余時間ESTIMATE_SECOND根據剩余行數除以前一秒速度后評估而來,可能存在一定的波動。如果觸發寫入限速,那么前一秒的速度的值可能會為0,從而出現ESTIMATE_SECOND取值為9223372036854775807的情況。

InnoDB場景

使用Online DDL添加列存索引或構建索引的過程中,AP節點的主要任務是回放Redo日志并將數據寫入列存索引,主要受限于日志回放速度和主節點DDL執行速度,日志回放速度可以參考控制臺的性能監控信息,主節點DDL的執行速度參考InnoDB DDL監控信息。

InnoDB DDL監控信息依賴于Performance Schema模塊,您可以在events_stages_current表中查詢正在執行的DDL語句, 在events_stages_history表中查詢已執行結束的DDL語句,主要的監控指標為WORK_COMPLETEDWORK_ESTIMATED,單位為Page。詳情可參考MySQL官網