Oracle數(shù)據(jù)庫系統(tǒng)是目前世界上使用最為廣泛的關(guān)系型數(shù)據(jù)庫系統(tǒng),Oracle數(shù)據(jù)庫支持OLTP(on-line transaction processing)和OLAP(On-Line Analytical Processing)兩大數(shù)據(jù)處理。OLTP主要是基本的、日常的事務處理。OLAP支持復雜的分析操作,側(cè)重決策支持,并提供直觀易懂的查詢結(jié)果。在OLTP場景中,交易延時是衡量交易系統(tǒng)性能的重要指標,如何小改動大收益的獲取高性能低時延的交易系統(tǒng)呢?
在線重做日志OnlineRedoLog
讓我們先看一下Oracle的數(shù)據(jù)文件類型:
Control File:記錄數(shù)據(jù)庫的結(jié)構(gòu)、參數(shù)和其他數(shù)據(jù)文件的位置。
Data File:存放用戶數(shù)據(jù)和臨時數(shù)據(jù)。
Online Redo Log:記錄重構(gòu),重做數(shù)據(jù)庫變更的重要信息。
Archive Log:當數(shù)據(jù)庫處于歸檔模式時,數(shù)據(jù)庫將寫滿的日志組拷貝到歸檔區(qū),用于數(shù)據(jù)異常時恢復。
通過對哪個數(shù)據(jù)文件進行小調(diào)整獲取較大性能收益呢?先將目標鎖定在Online Redo Log上看看。原因如下:
Oracle Online Redo Log是數(shù)據(jù)庫為保證已提交的事務不會丟失而建立的一種機制,它會記錄數(shù)據(jù)庫的INSERT、UPDATE、DELETE、CREATE等等變更。數(shù)據(jù)庫事務在提交時并不強制寫入到Data File中,但會保證首先寫入Redo Log中,可見Redo Log是Oracle性能影響的重要因子。此外,相對Data File ,Redo Log文件的數(shù)據(jù)量不大所要用到的存儲空間較少,調(diào)整起來比較方便。
鎖定目標后,我們看看對Redo Log可以進行哪些方面的調(diào)整:
l 修改Redo Log file大?。?/p>
l 將日志文件放到性能更高的盤上?
測試環(huán)境以及測試方案
下面基于手里的資源環(huán)境進行一個小實驗。一臺DELL PowerEdge R540服務器,部署Oracle 19c數(shù)據(jù)庫,一張SEAGATE 1.2T SAS HDD盤作為服務器的系統(tǒng)盤也作為數(shù)據(jù)庫的數(shù)據(jù)盤,一張DapuStor TLC 800G NVMe SSD盤作為方案對比盤。采用HammerDB工具對Oracle數(shù)據(jù)庫進行TPC-C壓力測試,統(tǒng)計測試結(jié)果。對比測試方案如下:
方案1:Oracle的數(shù)據(jù),Redo Log存儲盤都在HDD盤上,Redo Log文件大小采用Oracle默認配置;
方案2:Oracle的數(shù)據(jù),Redo Log存儲盤都在HDD盤上,Redo Log文件大小按照20分鐘切換日志的頻率設(shè)置大小;
方案3:Oracle的數(shù)據(jù)盤在HDD盤上,Redo Log存儲盤在NVMe SSD盤上。
測試結(jié)果數(shù)據(jù)
TPC-C性能對比(TPM)
HammerDB 1vuser和30vuser時,Oracle數(shù)據(jù)庫壓力測試TPM值。
適當調(diào)整Redo Log文件大小時,TPC-C性能有13%~45%的提升;
將Redo Log日志文件調(diào)整到性能更高的NVMe SSD硬盤上時,TPC-C性能有4倍以上的提升。
時延對比
統(tǒng)計DapuStor NVMe SSD和SEAGATE SAS HDD分別作為Redo Log存儲介質(zhì)時,TPC-C測試模型中1vuser 測試時NewOrder 事務的時延。MIN為最小響應時間,P50為50%事務的最大響應時間,P95為95%事務的最大響應時間。
使用DapuStor NVMe SSD作為oracle數(shù)據(jù)庫的Redo Log時,95%事務的Latency有20倍以上的降低,交易時延獲得了極大的降低。
CPU利用率
監(jiān)控DapuStor NVMe SSD和SEAGATE SAS HDD分別作為Redo Log存儲介質(zhì)時,TPC-C測試模型中1vuser 測試時CPU的利用率。
從數(shù)據(jù)可以看出采用NVMe SSD作為Redo Log存儲介質(zhì)時,CPU利用率較為穩(wěn)定,同時CPU利用率也相對較低。
測試總結(jié)
Redo Log作為Oracle數(shù)據(jù)系統(tǒng)的核心組件之一,其文件大小,所處不同存儲介質(zhì)都會對Oracle的性能,時延產(chǎn)生較大影響。其中采用高性能盤作為Redo Log的存儲介質(zhì)時,Oracle數(shù)據(jù)庫性能提升的同時系統(tǒng)的交易時延也相對的減小,此外系統(tǒng)CPU利用率也相對降低,CPU利用率也較為平穩(wěn)。
后續(xù)
下次有SAS/SATA SSD的環(huán)境,小編在給大家做一次Oracle相關(guān)的性能對比驗證,相信采用NVMe SSD + SAS/SATA SSD會能更好的發(fā)揮NVMe SSD的性能。
原文標題:REDO LOG對Oracle性能影響實測對比
文章出處:【微信公眾號:大普微】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
責任編輯:haq
-
數(shù)據(jù)庫
+關(guān)注
關(guān)注
7文章
3826瀏覽量
64508
原文標題:REDO LOG對Oracle性能影響實測對比
文章出處:【微信號:dputech,微信公眾號:DapuStor】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論