Informix數(shù)據(jù)庫服務(wù)器體系架構(gòu)_第1頁
Informix數(shù)據(jù)庫服務(wù)器體系架構(gòu)_第2頁
Informix數(shù)據(jù)庫服務(wù)器體系架構(gòu)_第3頁
Informix數(shù)據(jù)庫服務(wù)器體系架構(gòu)_第4頁
Informix數(shù)據(jù)庫服務(wù)器體系架構(gòu)_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、 2009 IBM Corporation2021年11月19日星期五Informix數(shù)據(jù)庫服務(wù)器體系架構(gòu)數(shù)據(jù)庫服務(wù)器體系架構(gòu)Information Management Informix 2010 IBM Corporation2內(nèi)容內(nèi)容 架構(gòu)概覽 進程模型 內(nèi)存模型 存儲模型Information Management Informix 2010 IBM Corporation3架構(gòu)概覽架構(gòu)概覽Information Management Informix 2010 IBM Corporation4IDS 服務(wù)器的部件服務(wù)器的部件(component) 進程進程 執(zhí)行數(shù)據(jù)庫服務(wù)器實例 (i

2、nstance)請求的任務(wù) 共享內(nèi)存共享內(nèi)存 緩存數(shù)據(jù)表的數(shù)據(jù) 維護和控制著進程所需的資源 磁盤磁盤 存儲了數(shù)據(jù)表的數(shù)據(jù)和數(shù)據(jù)庫服務(wù)器的系統(tǒng)信息Information Management Informix 2010 IBM Corporation5Information Management Informix 2010 IBM Corporation6Information Management Informix 2010 IBM Corporation7 進程模型進程模型 Information Management Informix 2010 IBM Corporation8基于進程的數(shù)

3、據(jù)庫服務(wù)器(基于進程的數(shù)據(jù)庫服務(wù)器(1) 每個進程使用了一些時間片,如下圖所示:多個進程一個接一個地運行當更多的用戶連接進來時,進程的數(shù)目將會增加,所需的資源也要增加Information Management Informix 2010 IBM Corporation9基于進程的數(shù)據(jù)庫服務(wù)器(基于進程的數(shù)據(jù)庫服務(wù)器(2) 基于進程的數(shù)據(jù)庫服務(wù)器不高效!0100有可能浪費有可能浪費50%或更多的或更多的CPU資源資源!CPU使用率使用率CPU被使用CPU空閑著Information Management Informix 2010 IBM Corporation10Informix動態(tài)可擴展架

4、構(gòu)(動態(tài)可擴展架構(gòu)(1)Dynamic Scalable Architecture-DSA)真正的多線程架構(gòu) 專為“動態(tài)可擴展架構(gòu)”設(shè)計的類庫 資源利用率高 不依賴于操作系統(tǒng) 容易移植 集成的并行機制 動態(tài)的 可擴展的Information Management Informix 2010 IBM Corporation11動態(tài)可擴展架構(gòu)(動態(tài)可擴展架構(gòu)(2) 進程(進程(Processes) 每個數(shù)據(jù)庫服務(wù)器進程被認為是一個虛擬處理器(virtual processor, VP) 。每個VP管理和運行屬于它的線程(thread) IDS按VP的功能對VP進行分類 例如:寫邏輯日志或物理日志、

5、從磁盤讀數(shù)據(jù) 線程(線程(Threads) 用戶線程(user thread):為從客戶端應(yīng)用程序來的請求提供服務(wù) 內(nèi)部線程(internal thread):完成內(nèi)部任務(wù),例如數(shù)據(jù)庫I/O、日志I/O等 一個線程可運行在與它類別相同的任意一個VP中 VP從線程就緒(ready)隊列中獲取線程的數(shù)據(jù)和環(huán)境信息,然后運行線程Information Management Informix 2010 IBM Corporation12動態(tài)可擴展架構(gòu)(動態(tài)可擴展架構(gòu)(3)提供提供fan-in和和fan-out的并行機制的并行機制PhysicalProcessorVirtualProcessorFan-

6、inFan-outPhysicalProcessor1PhysicalProcessor2PhysicalProcessor3VirtualProcessor1VirtualProcessor2VirtualProcessor3Information Management Informix 2010 IBM Corporation13DSA 基于線程的數(shù)據(jù)庫服務(wù)器(基于線程的數(shù)據(jù)庫服務(wù)器(1)當更多的用戶連接進來時,線程的數(shù)目將會增加,進程的數(shù)目可能不變Information Management Informix 2010 IBM Corporation14DSA -基于線程的數(shù)據(jù)庫服務(wù)器(

7、基于線程的數(shù)據(jù)庫服務(wù)器(2)幾乎完全使用了幾乎完全使用了CPU資源,擴展性更好!資源,擴展性更好!0100CPU使用率使用率CPU被使用CPU空閑著Information Management Informix 2010 IBM Corporation15DSA 高度并行(高度并行(1)串行掃描(scan)連接(join)排序(sort)時間 并行高度并行 并行的處理任務(wù)(task) 將任務(wù)(task)分成子任務(wù)且并行處理 寫(write)兩個數(shù)據(jù)表的連接(join)Information Management Informix 2010 IBM Corporation16DSA -高度并行(

8、高度并行(2)一個簡單查詢的例子一個簡單查詢的例子:select * from flightsorder by flightno;Introduction to Informix Dynamic Server16磁盤掃描磁盤掃描掃描掃描(scan)線程線程排序排序(sort)線程線程Information Management Informix 2010 IBM Corporation17DSA 高度并行(高度并行(3)一個復雜的使用了并行樹一個復雜的使用了并行樹(parallel tree)的例子的例子Exchange ThreadsExchange ThreadsHash Join Thr

9、eadsScan Threads (flightleg)Scan Threads (ticket)Exchange ThreadsSort Threadsselect count(*) from tickets a, flightleg b where a.flno = b.flno and orig=“DFW” order by a.classInformation Management Informix 2010 IBM Corporation18 內(nèi)存模型內(nèi)存模型 Information Management Informix 2010 IBM Corporation19共享內(nèi)存共享內(nèi)存

10、 數(shù)據(jù)庫服務(wù)器進程通過共享內(nèi)存池來達到共享數(shù)據(jù)的目的 通過緩存磁盤數(shù)據(jù)來減少磁盤I/O 提供了進程間通信的最快捷方式 為使用IPC通信的本地客戶端程序提供了通信渠道Information Management Informix 2010 IBM Corporation20共享內(nèi)存段共享內(nèi)存段 常駐段(常駐段(resident segment) 包含了緩沖池和其它系統(tǒng)信息 緩沖區(qū)用于緩沖數(shù)據(jù)表的數(shù)據(jù) 常駐內(nèi)存 固定大小 虛擬段(虛擬段(virtual segment) 包含與線程和session相關(guān)的信息 虛擬段里的頁面(page)可以被操作系統(tǒng)換出到磁盤上(page-out) IDS運行時可能

11、添加新的虛擬段 消息段(消息段(message segment) 如果IDS的“客戶端-服務(wù)器端”通信要使用消息緩沖區(qū)(message buffer),消息段將包含這些消息緩沖區(qū)Information Management Informix 2010 IBM Corporation21Shared Memory StructureInformation Management Informix 2010 IBM Corporation22Information Management Informix 2010 IBM Corporation23Information Management Inf

12、ormix 2010 IBM Corporation24Information Management Informix 2010 IBM Corporation25Information Management Informix 2010 IBM Corporation26Information Management Informix 2010 IBM Corporation27Information Management Informix 2010 IBM Corporation28Information Management Informix 2010 IBM Corporation29In

13、formation Management Informix 2010 IBM Corporation30Information Management Informix 2010 IBM Corporation31Information Management Informix 2010 IBM Corporation32 存儲模型存儲模型 Information Management Informix 2010 IBM Corporation33存儲模型存儲模型ChunkChunk ChunkDbspaceTablespacePageExtentsInformation Management I

14、nformix 2010 IBM Corporation34數(shù)據(jù)頁數(shù)據(jù)頁(Page) 基本的存儲單元 所有的數(shù)據(jù)庫和系統(tǒng)信息被存儲在數(shù)據(jù)頁上 在服務(wù)器上,最小的IO單元是數(shù)據(jù)頁 在大多數(shù)的UNIX系統(tǒng)中,缺省的數(shù)據(jù)頁大小是2KB。在AIX和Windows系統(tǒng)中,缺省的數(shù)據(jù)頁大小是4KB 數(shù)據(jù)頁大小是可配置的 (最大可以是 16KB)Information Management Informix 2010 IBM Corporation35Extents和和Tablespaces Extent 連續(xù)數(shù)據(jù)頁的集合 數(shù)據(jù)表(table)的存儲空間是以extent為單位來分配的 Tablespace

15、extent的邏輯集合 用于存儲數(shù)據(jù)表(table)ExtentTablespaceInformation Management Informix 2010 IBM Corporation36Chunks 用于存儲數(shù)據(jù)的連續(xù)磁盤空間 一個chunk可以是一個裸設(shè)備(raw device)、一個裸設(shè)備中的一部分、一個UNIX文件(cooked file) 一個chunk最大可以是4TB 最多可以有32767個chunkInformation Management Informix 2010 IBM Corporation37Dbspaces 一個或多個chunk的邏輯集合 一個dbspace可以

16、有1到32767個 chunk 最多可以有2047個dbspaceInformation Management Informix 2010 IBM Corporation38Blobspaces 用于存儲簡單大對象(simple large object,TEXT或BYTE類型的對象)的專門dbspace blobspace中的基本存儲單元是blobpage Blobpage的大小可被配置為數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)頁(page)大小的整數(shù)倍 對于blobspace里的數(shù)據(jù),數(shù)據(jù)庫服務(wù)器在將它們寫回磁盤時不使用緩沖區(qū)(buffer)Information Management Informix 201

17、0 IBM Corporation39Sbspaces 用于存儲智能大對象(smart large object,BLOB或CLOB類型的對象)的專門dbspace Sbspace的基本存儲單元是sbpage Sbpage的大小與數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)頁大小一樣,不是可配置的 在sbspace中分配存儲空間時基本單元是extent 缺省情況下,對sbspace的寫操作是使用緩沖區(qū)(buffer)的 在創(chuàng)建sbspace時,用戶可通過參數(shù)將sbspace配置成使用緩沖區(qū)或不使用緩沖區(qū)Information Management Informix 2010 IBM Corporation40鏡像(鏡像

18、(Mirroring) 自動將同樣的數(shù)據(jù)寫到兩個磁盤 防止了由于磁盤失敗而導致的數(shù)據(jù)丟失 如果一個磁盤不工作了,鏡像磁盤還能提供服務(wù) 成本 額外的磁盤空間 由于“寫到兩個磁盤”而增加的性能開銷Information Management Informix 2010 IBM Corporation41讀取讀取(Reading)和緩存和緩存(Caching)數(shù)據(jù)數(shù)據(jù) 當用戶發(fā)出一個查詢請求時,數(shù)據(jù)被從磁盤讀入緩沖區(qū)(buffer)中 I/O 的單位是數(shù)據(jù)頁(page) 緊接著的對該數(shù)據(jù)的讀取操作將讀取緩沖區(qū)中的該數(shù)據(jù)(不用再從磁盤中讀入) 對該數(shù)據(jù)的修改對所有的數(shù)據(jù)庫進程都是可見的Informat

19、ion Management Informix 2010 IBM Corporation42Information Management Informix 2010 IBM Corporation43物理日志和邏輯日志物理日志和邏輯日志 物理日志(物理日志(Physical logging) 如果一個數(shù)據(jù)也被更改了,物理日志將存儲該數(shù)據(jù)頁的before-image(即該數(shù)據(jù)頁被更改前的數(shù)據(jù)) 物理日志由由磁盤上連續(xù)的數(shù)據(jù)頁組成 用于系統(tǒng)失敗時的恢復(recovery) 邏輯日志(邏輯日志(Logical logging) 記錄了事務(wù)(transaction)的細節(jié) 事務(wù)的記錄(Transaction records)被保存在邏輯日志中 邏輯日志由邏輯日志文件組成。每個文件由磁盤上連續(xù)的數(shù)據(jù)頁組成 用于事務(wù)回滾(transaction rollback)和系統(tǒng)失敗時的恢復(recovery)Information Management Informix 2010 IBM Corporation44Information Management Informix 2010 IBM Corporation45Information Management Informix 2010 IBM Corporation46檢查點(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論