Oracle中的儲存層次體系

來源:互聯網
上載者:User

Oracle中的儲存層次體系如下:

(1) 資料庫由一個或多個資料表空間組成。

(2) 資料表空間由一個或多個資料檔案組成。這些檔案可以是檔案系統中的cooked檔案、原始分區、ASM管理的資料庫檔案,或叢集檔案系統上的檔案。資料表空間包含段。

(3) 段(TABLE、INDEX等)由一個或多個區段組成。段在資料表空間中,但是可以包含這個資料表空間中多個資料檔案中的資料。

(4) 區段是磁碟上一組邏輯連續的塊。區段只在一個資料表空間中,而且總是在該資料表空間內的一個檔案中。

(5) 塊是資料庫中最小的分配單位,也是資料庫使用的最小I/O單位。

註:

 


空間是一個容器,其中包含有段。每個段都只屬於一個資料表空間。一個資料表空間中可能有多個段。一個給定段的所有區段都在與段相關聯的資料表空間中。段絕對不會跨越表
空間邊界。資料表空間本身可以有一個或多個相關的資料檔案。資料表空間中給定段的一個區段完全包含在一個資料檔案中。不過,段可以有來自多個不同資料檔案的區段。
資料表空間如圖3-3所示。


圖3-3  這個資料表空間包含兩個資料檔案、3個段和4個區段

圖3-3顯示了一個名為USER_DATA的資料表空間。其中包括兩個資料檔案:user_data01和user_data02。並分配了3個段:T1、T2和I1(可能是兩個表和一個索引)。這個資料表空間中分配了4個區段,每個區段表示為邏輯上連續分配的一組資料庫塊。段T1包括兩個區段,分別在不同的檔案中。段T2和I1都各有一個區段。如果這個資料表空間需要更多的空間,可以調整已經分配給資料表空間的資料檔案的大小,或者可以再增加第三個資料檔案。

資料表空間是Oracle中的邏輯儲存容器。作為開發人員,我們會在資料表空間中建立段,而絕對不會深入到原始的“檔案級”。我們可不希望在一個特定的檔案中分配區段(當然這也是可以的,但我們一般都不會這麼做)。相反,我們會在資料表空間中建立對象,餘下的工作都由Oracle負責。如果將來某個時刻DBA決定在磁碟上移動資料檔案,從而使I/O分布得更均勻,這對我們來說沒有任何關係,它根本不會影響我們的處理。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.