<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      GaussDB查詢表空間大小語句及原理

      GaussDB查詢表空間大小

      -- 查詢版本
      select version(); -- GuassDB_T_1.2.1.SPC135.B002Release b7197fd195
      
      -- 單個Segment的物理占用字節數
      select * from MY_SEGMENTS;
      
      -- 一張表的總字節大小=該表所有Segment的BYTES之和
      select 
        segment_name as 表名,
        sum(bytes) as 總字節數,  -- 匯總所有DN上的Segment大小
        sum(bytes)/1024/1024 as 總大小_MB  -- 轉換為MB更易讀
      from MY_SEGMENTS
      where 
        segment_type = 'TABLE'  -- 只保留表類型的Segment
        -- and segment_name = 'USER_INFO'  -- 指定表名(大寫,GuassDB默認區分大小寫)
        -- and owner = 'USER1'  -- 可選:過濾表所有者,避免歧義
      group by segment_name;
      
      

      一、基礎前提:GuassDB 的 MPP 架構與數據分段(Segment)

      GuassDB 是典型的MPP(大規模并行處理)數據庫,其核心設計是將數據 “分片存儲、并行計算”—— 這是理解MY_SEGMENTS作用的關鍵:

      • 數據節點(DN):GuassDB 集群包含多個 DN(Data Node),每個 DN 是獨立的存儲和計算單元;
      • 數據分段(Segment):當創建一張表時,GuassDB 會根據預設的 “分片策略”(如哈希分片、范圍分片),將表的完整數據拆分成多個邏輯分片,每個分片對應一個「Segment」,并分配到不同的 DN 上存儲;
      • Segment 的物理載體:每個 Segment 本質是 DN 上的一組物理數據文件(包含數據塊、索引塊、管理塊等),表的實際數據就分散存儲在這些 Segment 的物理文件中。

      簡單說:一張表的完整數據 = 多個 DN 上的 Segment 數據之和,表的 “字節大小” 本質是所有 Segment 物理占用空間的總和。

      二、核心角色:MY_SEGMENTS 是 “Segment 元數據的系統字典表”

      MY_SEGMENTS 是 GuassDB 內置的系統表(數據字典表),專門用于存儲集群中所有「Segment」的元數據信息 —— 包括 Segment 對應的對象(表、索引等)、存儲位置、物理大小等關鍵屬性。

      可以把它理解為 GuassDB 的 “Segment 資產臺賬”:每一個 Segment 在創建、修改、刪除時,系統都會自動更新這張表的記錄,確保元數據與實際存儲狀態一致。

      三、關鍵機制:MY_SEGMENTS 如何記錄 “字節大小”?

      MY_SEGMENTS 能查詢到表的字節大小,核心是它通過實時維護 Segment 的物理存儲元數據實現的,具體分為 3 個步驟:

      1. Segment 創建時:初始化元數據

      當用戶執行 CREATE TABLE 創建表時:

      • GuassDB 根據分片策略在多個 DN 上創建對應數量的 Segment(如 3 個 DN 則可能創建 3 個 Segment);
      • 系統自動在 MY_SEGMENTS 中插入一條 / 多條記錄(每個 Segment 對應一條),并初始化關鍵字段:
        • SEGMENT_NAME:對應表名(或索引名,區分 Segment 類型);
        • SEGMENT_TYPE:標記 Segment 類型(TABLE表示表段、INDEX表示索引段、TEMPORARY表示臨時段等);
        • BYTES:初始化為 0(此時無數據,物理占用為 0);
        • BLOCKS:初始化為 0(Segment 占用的數據塊數量,與BYTES關聯:BYTES = BLOCKS * 數據塊大小,GuassDB 默認數據塊為 8KB);
        • TABLESPACE_NAME:標記 Segment 所在的表空間(確定物理存儲路徑)。

      2. 數據操作時:實時更新字節大小

      當用戶執行 INSERT/DELETE/UPDATE 等數據操作,或 ALTER TABLE 等結構調整時:

      • 數據寫入 / 刪除會直接修改 DN 上 Segment 對應的物理數據文件(如新增數據塊、釋放空塊);

      • GuassDB 的存儲引擎會實時計算該 Segment 物理文件的最新占用大小,并同步更新 MY_SEGMENTS

        中對應記錄的 BYTES 和 BLOCKS 字段:

        • 例如:插入 1000 行數據,占用 2 個 8KB 數據塊,則 BLOCKS=2,BYTES=2*8192=16384(字節);

        • 例如:刪除部分數據后,若釋放了空數據塊,BLOCKS 會減少,BYTES 也會同步降低(注:部分場景下空塊可能暫不釋放,需手動執行 VACUUM 清理,此時BYTES可能暫時不變)。

      3. 統計信息校準:確保大小準確性

      除了實時更新,GuassDB 還會通過兩種方式校準 MY_SEGMENTS 的元數據準確性:

      • 自動統計(Auto ANALYZE):系統定期(默認配置)執行 ANALYZE 操作,掃描各 Segment 的物理文件,核對并修正 BYTESBLOCKS 等字段,避免因碎片、臨時塊等導致的大小偏差;
      • 手動統計(Manual ANALYZE):用戶可執行 ANALYZE 表名 手動觸發統計,適用于數據量劇變后需要即時獲取準確大小的場景。

      四、查詢邏輯:如何從 MY_SEGMENTS 讀取表的字節大?。?/h3>

      MY_SEGMENTS 中的 BYTES 字段直接存儲了單個 Segment 的物理占用字節數,而一張表的總字節大小 = 該表所有 Segment 的 BYTES 之和。

      1. MY_SEGMENTS 核心字段說明(與 “字節大小” 相關)

      字段名 含義說明
      SEGMENT_NAME Segment 對應的對象名(如 “USER_INFO” 表名、“IDX_USER_INFO” 索引名)
      SEGMENT_TYPE Segment 類型(必須過濾為TABLE才是表的 Segment,排除索引 / 臨時段等干擾)
      BYTES 單個 Segment 的物理占用字節數(核心字段,直接對應 “字節大小”)
      BLOCKS Segment 占用的數據塊數量(輔助驗證:BYTES ≈ BLOCKS * 數據塊大小,默認 8KB)
      TABLESPACE_NAME Segment 所在表空間(可定位物理存儲路徑)
      OWNER Segment 的所有者(避免查詢其他用戶的表)

      2. 實際查詢表字節大小的正確邏輯

      直接 select * from MY_SEGMENTS 會返回所有類型 Segment(表、索引、臨時段等)的信息,需過濾 “表類型” 并匯總大小,例如:

      -- 查詢指定表(如USER_INFO)的總字節大小
      select 
        segment_name as 表名,
        sum(bytes) as 總字節數,  -- 匯總所有DN上的Segment大小
        sum(bytes)/1024/1024 as 總大小_MB  -- 轉換為MB更易讀
      from MY_SEGMENTS
      where 
        segment_type = 'TABLE'  -- 只保留表類型的Segment
        and segment_name = 'USER_INFO'  -- 指定表名(大寫,GuassDB默認區分大小寫)
        and owner = 'USER1'  -- 可選:過濾表所有者,避免歧義
      group by segment_name;
      

      補充:GuassDB_T_1.2.1.SPC135.B002是企業版(T 代表企業版),MY_SEGMENTS 的核心字段(BYTES、SEGMENT_TYPE)在 GuassDB 各版本中基本一致,原理通用

      posted @ 2025-08-27 10:56  hqq的進階日記  閱讀(46)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 亚洲人妻系列中文字幕| 国产av一区二区午夜福利| 国产 亚洲 制服 无码 中文| 免费无码又黄又爽又刺激| 日本黄色三级一区二区三区| 精品一日韩美女性夜视频| 久久人人97超碰国产精品| 国产在线乱子伦一区二区| 国产伦一区二区三区视频| 精品无码一区二区三区的天堂 | 91福利一区二区三区| 国产片AV国语在线观看手机版| 国产一区二区三区精美视频| av在线播放国产一区| 又黄又爽又无遮挡免费的网站| 尤物国精品午夜福利视频| 亚洲人精品午夜射精日韩| 人妻在线无码一区二区三区| 熟女人妻aⅴ一区二区三区电影| 日本一区二区中文字幕久久| 久久AV中文综合一区二区| 欧美三级中文字幕在线观看| 亚洲av色香蕉一二三区| 精品国产一区二区三区国产馆| 国产网友愉拍精品视频手机| 米奇亚洲国产精品思久久| 极品vpswindows少妇| 人妻系列无码专区免费| 国产一区二区三区在线看| 人妻少妇精品中文字幕| 欧美牲交a欧美牲交aⅴ一| 亚洲男人综合久久综合天堂| 亚洲日韩一区二区| 久久99精品国产麻豆婷婷| 久久亚洲精品成人av秋霞| 伊人精品成人久久综合97| 极品无码国模国产在线观看| 中文字幕第一页国产精品| 最近中文国语字幕在线播放| 午夜精品区| 国产亚洲亚洲国产一二区|