當前位置:學者齋 >

IT認證 >Oracle認證 >

oca認證考試指南全冊

oca認證考試指南全冊

IT業對專家的要求很高,職業競爭壓力很大。無論是新進入這個行業的人,還是此行業中的老手,都需要知道他們的那些技術背景能真正吸引到僱主的眼光。下面是小編整理的關於oca認證考試指南全冊,歡迎大家參考!

oca認證考試指南全冊

  1.4 例項記憶體結構

Oracle例項由稱為系統全域性區(SGA)的共享記憶體塊以及大量的後臺程序構成,SGA至少包含三種資料結構

資料庫快取區快取

日誌緩衝區

共享池

還可能包含

大池

Java池

流池

使用者會話還需要伺服器端的記憶體。此記憶體不共享,也稱為程式全域性區域或PGA,每個會話都有自己專用的PGA。

  1.4.1 資料庫緩衝區快取

資料庫緩衝區快取是Oracle用來執行SQL的工作區域

在更新資料時,使用者的會話不直接更新磁碟上的'資料。包含關鍵資料的資料塊首先複製到資料庫緩衝區快取。更改(如插入新行、刪除或修改現有行)應用於資料緩衝區快取中這些資料塊副本。此後,塊將在快取中保留一段時間,直至其佔有的緩衝區需要快取另一塊為止。

在查詢資料時,資料也要經過快取。會話計算出哪些塊包含關鍵的行,並將它們複製到資料庫緩衝區快取(如果那裡還未存在)。此後,相關行傳輸到會話的PGA作進一步處理。此後塊會在資料庫緩衝區快取中保留一段時間。

資料檔案的格式被設定為固定大小的塊。錶行和其他資料物件(如索引鍵),儲存在這些塊中。資料庫緩衝區快取的格式被設定為記憶體緩衝區,每個可以容納一個塊,與塊不同,行的長度是變化的,行的長度取決於為表定義的列的數量(不管列是否真的包含內容,也不考慮包含什麼內容)。根據塊的大小(由DBA選擇)和行的大小(取決於表設計和使用)。每個塊中可能有多個行,也可能有一個行延伸到多個塊中。

理想狀況下,包含頻繁訪問的資料的所有塊將位於資料庫緩衝區快取中,從而最大程度地減少磁碟I/O的需要。

select customer_id,customer_name from customers;

update customers set customer_name='Sid' where customer_id=100;

commit

為了執行使用者程序提交的SELECT語句,會話的伺服器程序將掃描緩衝區快取中包含相關行的資料塊。如果找到了,就會發生一次緩衝區快取命中。在本例中,假定緩衝區快取未命中,伺服器程序在將結果傳送給使用者程序(格式化資料後顯示給銷售代表)之前,會將包含相關行的資料從資料檔案讀入緩衝區。

然後,使用者程序將UPDATE和COMMIT語句提交給伺服器程序執行。在執行UPDATE語句時,如果包含行的塊在快取中仍然可用,那麼在緩衝區快取中獎更新行。在本例中,緩衝區快取命中率為50%:對快取中的塊有兩次訪問,但只有一次從磁碟讀取塊。如果資料庫緩衝區快取調整得當,快取命中率將在90%以上。

注意,緩衝區的更新頻率(或COMMIT的數量)與何時寫回資料檔案沒有任何關係。對資料檔案執行寫操作由資料庫寫入器後臺程序完成。

資料庫緩衝區快取的大小會對效能產生至關重要的影響。

資料庫緩衝區快取在例項啟動時分配,從9i開始,可以隨時將其調大或調小。可以採用手動方式重調,也可以根據工作負荷(從10g版本開始)自動重調大小(如果啟用了自動化機制)

標籤: oca 考試指南 全冊
  • 文章版權屬於文章作者所有,轉載請註明 https://xuezhezhai.com/zh-tw/itrz/oracle/wv2e1p.html