文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  ndbinfo diskpagebuffer 表格

25.6.17.31 ndbinfo diskpagebuffer 表格

diskpagebuffer 表格提供有關 NDB 叢集磁碟資料表格所使用的磁碟頁面緩衝區的統計資料。

diskpagebuffer 表格包含以下欄位

  • node_id

    資料節點 ID

  • block_instance

    區塊執行個體

  • pages_written

    寫入磁碟的頁面數。

  • pages_written_lcp

    本機檢查點寫入的頁面數。

  • pages_read

    從磁碟讀取的頁面數

  • log_waits

    等待將日誌寫入磁碟的頁面寫入次數

  • page_requests_direct_return

    緩衝區中可用的頁面請求數

  • page_requests_wait_queue

    必須等待緩衝區中頁面可用的請求數

  • page_requests_wait_io

    必須從磁碟上的頁面讀取的請求數(緩衝區中沒有頁面)

注意事項

您可以將此表格與 NDB 叢集磁碟資料表格搭配使用,以判斷 DiskPageBufferMemory 是否足夠大,可讓從緩衝區而不是從磁碟讀取資料;盡量減少磁碟搜尋可以幫助提高此類表格的效能。

您可以使用如下查詢來判斷從 DiskPageBufferMemory 讀取的比例與讀取總數的比例,此查詢將此比率以百分比表示

SELECT
  node_id,
  100 * page_requests_direct_return /
    (page_requests_direct_return + page_requests_wait_io)
      AS hit_ratio
FROM ndbinfo.diskpagebuffer;

此查詢的結果應與此處顯示的類似,叢集中的每個資料節點有一列(在此範例中,叢集有 4 個資料節點)

+---------+-----------+
| node_id | hit_ratio |
+---------+-----------+
|       5 |   97.6744 |
|       6 |   97.6879 |
|       7 |   98.1776 |
|       8 |   98.1343 |
+---------+-----------+
4 rows in set (0.00 sec)

hit_ratio 值接近 100% 表示只有極少數的讀取是從磁碟而不是從緩衝區進行,這表示磁碟資料讀取效能正接近最佳水準。如果這些值中有任何一個小於 95%,則強烈表示 config.ini 檔案中 DiskPageBufferMemory 的設定需要增加。

注意

變更 DiskPageBufferMemory 需要在所有叢集的資料節點上進行輪流重新啟動,才能生效。

block_instance 指的是核心區塊的執行個體。此數字與區塊名稱一起使用,可用於在 threadblocks 表格中查找給定的執行個體。使用此資訊,您可以取得與個別執行緒相關的磁碟頁面緩衝區指標的資訊;此處顯示一個使用 LIMIT 1 將輸出限制為單一執行緒的範例查詢

mysql> SELECT
     >   node_id, thr_no, block_name, thread_name, pages_written,
     >   pages_written_lcp, pages_read, log_waits,
     >   page_requests_direct_return, page_requests_wait_queue,
     >   page_requests_wait_io
     > FROM ndbinfo.diskpagebuffer
     >   INNER JOIN ndbinfo.threadblocks USING (node_id, block_instance)
     >   INNER JOIN ndbinfo.threads USING (node_id, thr_no)
     > WHERE block_name = 'PGMAN' LIMIT 1\G
*************************** 1. row ***************************
                    node_id: 1
                     thr_no: 1
                 block_name: PGMAN
                thread_name: rep
              pages_written: 0
          pages_written_lcp: 0
                 pages_read: 1
                  log_waits: 0
page_requests_direct_return: 4
   page_requests_wait_queue: 0
      page_requests_wait_io: 1
1 row in set (0.01 sec)