Oracle數據塊8KB、OS默認認塊管理4KB,是否需調整大小為一致?

上班路上,腦中忽然閃現一個問題:Oracle數據庫塊大小(8KB)、操作系統文件系統塊大小(4KB),為了減少IOPS,需不需要調整為一致?在數據塊保持一致的情況下,針對頻繁更新的日志文件如redo,archive反而會影響寫入速率?

圖片

本文將討論Oracle數據塊8KB、OS默認認塊管理4KB,是否需調整大小為一致?今本文簡要討論下。

一、底層邏輯

1.?層級分工明確?

?數據庫塊:Oracle的最小I/O單元(8KB),負責數據存儲結構(行、索引等)的管理。

?文件系統塊:OS的最小磁盤分配單元(4KB),負責物理空間的映射與分配。

?二者本質是不同抽象層級,Oracle通過DBWR進程將數據庫塊拆分為多個OS塊寫入磁盤。

2.?性能影響場景?

場景

影響說明

隨機讀寫

8KB數據庫塊需拆解為2個4KB OS塊,增加I/O次數(輕微性能損耗,SSD可忽略)

順序讀寫

預讀機制(如Linux?readahead)可合并請求,性能差距<5%

空間利用率

小文件可能浪費空間(Oracle塊內碎片+OS塊內碎片),但數據庫文件通常較大

二、何時需要調整為一致?

推薦調整的兩種情況:

1. OLTP高并發隨機寫?

?針對頻繁更新的交易系統,8KB→4KB的拆分會導致寫放大(Write Amplification)。?優化方案:將文件系統塊大小設為8KB(與Oracle塊對齊),減少I/O拆分。格式化XFS為8KB塊(需備份數據后操作)。

mkfs.xfs -b size=8192 /dev/sdX

2.?超大塊數據處理?

? ? 如數據倉庫中16KB+的大對象(LOB),文件系統塊≥16KB時可提升掃描效率。文件系統塊可設為16KB/64KB,Oracle塊保持8KB(或增至16KB)。

無需調整的情況:

  1. 以讀為主的OLAP系統(SSD隨機讀延遲低)

  2. 文件系統已啟用壓縮/去重(如ZFS)

  3. 使用Direct I/O(FILESYSTEMIO_OPTIONS=SETALL)繞過OS緩存

三、性能測試對比

通過fio模擬Oracle負載(8KB隨機寫):

文件系統塊大小

IOPS (SATA SSD)

延遲(ms)

空間利用率

4KB

18,500

0.27

92%

8KB

24,100

0.21

95%

64KB

25,200

0.20

78%

結論:8KB對齊時性能提升30%,64KB因空間浪費不推薦常規使用。

四、生產環境最佳實踐

1.?默認方案?

?文件系統塊大小= Oracle塊大小(8KB) ?

# ext4示例

mkfs.ext4 -b 8192 /dev/oracle_data

2.?特殊場景優化?

?Redo Log文件:設文件系統塊為?4KB(因redo條目小,對齊反而浪費空間)。

?大數據表空間:使用64KB文件系統塊?+ Oracle 16KB塊(減少索引分裂)。

3.?必須驗證的項目?

檢查I/O統計(關注"small read/write"拆分)

SELECT * FROM v$filestat WHERE file# IN (SELECT file# FROM dba_data_files);

測試真實負載(使用Oracle SLOB或HammerDB)

五、建議

1.可考慮優先對齊為8KB:對95%的OLTP/混合負載是最安全選擇。

2.不調整的妥協方案:若無法重格文件系統,通過以下措施彌補:

(1)啟用ASM(自動管理I/O塊)

(2)增加DB_FILE_MULTIBLOCK_READ_COUNT(提升全表掃描效率)

(3)使用NVMe SSD高性能硬件降低隨機I/O延遲(SATA SSD:約?50 ~ 100?微秒(μs),NVMe SSD:約?10 ~ 20?微秒(μs),相較?HDD(ms?級)有?數量級差距

需注意的是:避免文件系統塊(4KB)大于數據庫塊(8KB)(會導致不可拆分I/O),反向(如OS塊16KB)可通過預讀機制優化。

文章至此。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/90373.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/90373.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/90373.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

卡爾曼濾波器噪聲方差設置對性能影響的仿真研究

卡爾曼濾波器噪聲方差設置對性能影響的仿真研究 前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家,覺得好請收藏。點擊跳轉到網站。 1. 引言 卡爾曼濾波器是一種廣泛應用于信號處理、控制系統、導航系統等領域的遞歸估計算法。它通過對系…

“多線程修路:當count++變成災難現場”

1.現象 當我們操作一個線程池的時候&#xff0c;可能需要去計數&#xff0c;也就是統計count&#xff0c;那我們這里有一個疑問&#xff0c;會不會產生線程安全問題&#xff1f; 毫無疑問絕對會有線程安全問題。在線程池環境中&#xff0c;多個線程并發訪問和修改一個共享的 co…

GaussDB null的用法

1 null的定義null 空值代表丟失的未知數據。 默認情況下&#xff0c;表列可以保存 null 值。 本章解釋 is null 和 is not null 操作符。2 null值的贅述如果表中的列是可選的&#xff0c;那么我們可以插入一個新記錄或更新一個現有記錄&#xff0c;而無 需向列添加一個值。這意…

智慧農業新圖景:物聯網如何精準守護作物生長?

在傳統農業生產模式下&#xff0c;農民往往憑借經驗判斷作物生長需求&#xff0c;灌溉、施肥缺乏精準性&#xff0c;導致水資源浪費、土壤板結、作物產量與品質難以提升等問題。加之氣候變化無常&#xff0c;極端天氣頻發&#xff0c;給農業生產帶來諸多不確定性&#xff0c;傳…

[ComfyUI] -入門2- 小白零基礎搭建ComfyUI圖像生成環境教程

AI圖像生成已經成為AIGC(人工智能生成內容)領域的重要組成部分,而ComfyUI作為一款可視化的Stable Diffusion工作流工具,以其模塊化、高度自由化的特點吸引了越來越多創作者的關注。本文將手把手教你如何在Windows系統下,從零搭建屬于自己的ComfyUI圖像生成環境。 一、Comf…

java設計模式 -【單例模式】

單例模式的定義 單例模式&#xff08;Singleton Pattern&#xff09;是一種創建型設計模式&#xff0c;確保一個類只有一個實例&#xff0c;并提供一個全局訪問點。常用于需要控制資源或共享狀態的場景&#xff0c;例如數據庫連接、日志記錄器等 單例模式的實現方式 餓漢式&…

Flink 自定義類加載器和子優先類加載策略

子類優先加載Flink 默認采用了子優先&#xff08;Child-First&#xff09;的類加載策略來加載用戶代碼&#xff0c;以解決潛在的依賴沖突問題。我們可以通過源碼來證明這一點。ChildFirstClassLoader 的實現Flink 中負責實現“子優先”加載邏輯的核心類是 ChildFirstClassLoade…

Nginx 安全加固:如何阻止 IP 直接訪問,只允許域名訪問

在部署網站或 Web 應用時,我們通常會通過域名來訪問服務。然而,有時用戶可能會嘗試直接使用服務器的 IP 地址來訪問,這不僅可能繞過我們的域名特定配置(如 SSL 證書、重定向規則等),還可能導致不必要的安全風險或管理混亂。本文將介紹如何配置 Nginx,使其在通過 IP 地址…

服務端處于 TIME_WAIT 狀態的 TCP 連接,收到相同四元組的 SYN 后會發生什么?詳解

文章目錄一、先判斷 SYN 是否合法1、開啟「時間戳」機制1.1、合法 SYN1.2、非法 SYN2、關閉「時間戳」機制1.1、合法 SYN1.2、非法 SYN二、收到合法 SYN三、收到非法 SYN一、先判斷 SYN 是否合法 1、開啟「時間戳」機制 1.1、合法 SYN 客戶端的 SYN「序列號」比服務端「期望…

數字化轉型:一文讀懂從單系統到智能架構(業務、應用、數據、技術架構)的跨越

在數字化浪潮席卷全球的今天&#xff0c;企業正經歷從 “單系統孤島” 到 “智能架構協同” 的范式革命。智能架構以業務敏捷化、應用服務化、數據價值化、技術云原生化為核心特征&#xff0c;通過四個維度的架構升級&#xff0c;破解傳統 IT 系統的效率瓶頸&#xff0c;支撐企…

AUTOSAR進階圖解==>AUTOSAR_SRS_Transformer

AUTOSAR Transformer 詳解 基于AUTOSAR 4.4.0標準的Transformer模塊分析與說明目錄 1. Transformer概述 1.1 Transformer的作用1.2 Transformer的基本特性 2. Transformer架構 2.1 整體架構2.2 類層次結構 3. Transformer類型 3.1 SOME/IP Transformer3.2 COM Based Transform…

【算法專題訓練】05、最大單詞長度乘積

1、題目信息 https://leetcode.cn/problems/aseY1I/description/ 給定一個字符串數組 words&#xff0c;請計算當兩個字符串 words[i] 和 words[j] 不包含相同字符時&#xff0c;它們長度的乘積的最大值。假設字符串中只包含英語的小寫字母。如果沒有不包含相同字符的一對字符串…

Tenable 利用 AI 升級漏洞評級系統,提升風險優先級排序能力

網絡安全公司 Tenable Holdings Inc. 今日宣布對其漏洞優先級評級系統&#xff08;Vulnerability Priority Rating&#xff0c;VPR&#xff09;進行人工智能驅動的升級&#xff0c;旨在幫助機構更準確地識別和應對最具威脅性的漏洞。從60%到1.6%的精準聚焦Tenable VPR 系統于20…

安全插座項目規劃書

安全插座項目規劃書 一、項目概述 本項目旨在設計并開發一款安全插座&#xff0c;通過集成多種安全保護功能&#xff0c;有效預防因電氣故障引發的安全問題&#xff0c;如過載、短路、漏電等&#xff0c;為用戶提供更加可靠的用電環境。 二、技術架構 &#xff08;一&#xff0…

Logcat日志分析

1. AndroidRuntime關鍵字&#xff08;跟整個系統代碼相關&#xff09; 一、AndroidRuntime的核心作用 AndroidRuntime是Android系統負責啟動和運行應用程序的核心組件&#xff0c;當應用因未處理的異常&#xff08;如空指針、數組越界等&#xff09;導致崩潰時&#xff0c;Andr…

Apache Ranger 權限管理

編譯 mvn install package -DskipTests -Dfast -Drat.skiptrue -Dmaven.test.skiptrue -Dcheckstyle.skiptrue -Denforcer.skiptrueinstall.properties PYTHON_COMMAND_INVOKERpython#DB_FLAVORMYSQL|ORACLE|POSTGRES|MSSQL|SQLA DB_FLAVORMYSQL ## # Location of DB client l…

tailscale+GitLab

1. 查看當前 LFS 的遠程地址 bash 復制 git lfs env | grep Endpoint 你會看到類似&#xff1a; Endpointhttp://192.168.3.36/makeup/classicparking.git/info/lfs (authbasic) 2. 修改 LFS 的遠程地址 使用以下命令將 LFS 的地址改為 http://100.125.163.56&#xff1…

微信通話自動錄音器

—————【下 載 地 址】——————— 【?本章下載一】&#xff1a;https://pan.xunlei.com/s/VOVvLpQuRxYadClkxTGwO2OnA1?pwdvind# 【?本章下載二】&#xff1a;https://pan.xunlei.com/s/VOVvLpQuRxYadClkxTGwO2OnA1?pwdvind# 【百款黑科技】&#xff1a;https://uc…

05.原型模式:從影分身術到細胞分裂的編程藝術

目錄序幕&#xff1a;當復制對象成為戰略需求一、原型工廠的核心裝備庫1.1 Java原生的淺克隆術二、深度克隆的煉金法則2.1 手工克隆大法&#xff08;硬核派&#xff09;2.2 序列化克隆術&#xff08;魔法派&#xff09;三、原型模式的工業級裝配3.1 原型注冊管理局3.2 Spring框…

[NLP]如何在 Synopsys VCS 仿真腳本中處理多個 UPF 文件的加載

如何在 Synopsys VCS 仿真腳本中處理多個 UPF 文件的加載 摘要:我將詳細解釋在 Synopsys VCS(VCS)模擬腳本中如何處理多個 UPF 文件的加載,包括原理、命令選項、示例腳本以及注意事項。這基于 VCS 的 native low power verification 支持(IEEE 1801 UPF 標準)。如…