VSAM

VSAM

VSAM: Virtual storage access method 虛擬存儲訪問方法是IBM的磁碟檔案存儲訪問方法, 首先使用在0S/VS2作業系統中,然後使用在多虛擬存儲架構,現在在z/OS。 作為一個面向記錄的檔案系統,VSAM由四個數據集組成。關鍵字順序數據集KSDS, 關聯記錄數據集RRDS, 實體順序數據集ESDS和線性數據集LDS。 KSDS,RRDS和ESDS由記錄組成, 而LDS只包含無固定記錄結構的位元組流。

VSAM基本概念

虛擬存儲技術的發展,為檔案管理系統開拓了新的方向,而基於虛擬存儲概念而研製發展的虛擬存取方法,在IBM系列的機器中也已經普遍地使用。

VSAM(Virtual Storage Access Method)是一種虛擬存取方法,它是為了與直接存取存儲設備DASD(Direct Access Storage Device--能夠在檔案上直接地存取任何記錄的設備)一起使用而研製的檔案管理系統。

VSAM 存取檔案記錄的方法將不依賴於存放記錄的外部設備類型,而是通過這個記錄對檔案開始點的相對位移(相對位移以位元組為單位計算)來訪問記錄。相對位移值就稱之為相對位元組地址RBA(Relative Byte Address)。檔案開始點地址定為0。

VSAM方法允許使用三種不同的數據組織,每一種數據組織均可採用不同的處理方法。包括了對在DASD上檔案的自動空間分配、產生替換索引等功能。

VSAM方法還有一組服務性的程式--------存取方法服務AMS(Access Method Service)。這組服務性程式可以定義和維護VSAM檔案,把記錄輸入到VSAM檔案中、為檔案建立一個或多個替換索引、複製和列印檔案、產生檔案的副本、恢復失效的數據、把順序存取方法( SAM)檔案和索引順序存取方法(ISAM)檔案轉換成VSAM格式、並且能對已轉換成VSAM格式的ISAM檔案進行處理。

基本特徵

1。自動的數據空間分配

VSAM的數據空間全是通過獨立的目錄來管理的。該目錄描述了在系統中的全部VSAM檔案的邏輯屬性和物理屬性。用於 VSAM 的數據空間是動態的,如需要則可增加更多的空間。

2。數據保護

VSAM方法利用它本身的設計和存取控制參數,可以對數據進行保護。VSAM的設計允許用戶僅通過指定正確的目錄信息來存取數據,目錄本身指向數據,在目錄中所存儲的信息都受到VSAM所限制。

3。設備獨立性

VSAM方法允許在不同類型的磁碟設備上處理,而不必重新進行程式設計。事實上,在邏輯上 VSAM檔案被設計成連續的區域,唯一的限制是:VSAM檔案必須全部存儲在同樣的設備類型的卷中。

4。數據移植性

VSAM方法提供了在不同作業系統下VSAM檔案互換的可能性。

2。VSAM的數據組織

所謂的檔案組織形式,是指數據記錄在檔案中的排列方式。而檔案的存取方法是指從檔案找到數據記錄的方法。VSAM 所使用的數據,均具有一定的組織結構以及存取方法,用戶可以選擇三種類型的數據組織及其相應的存取方法:

1。鍵順序數據組織(Indexed Sequential Organization)

2。進入順序數據組織(Sequential Organization)

3。相對記錄數據組織(Relative Organization)

這三種數據組織

所對應的數據集就分別稱為:

1。鍵順序數據集KSDS(Key Squenced Data Set)

2。進入順序數據集ESDS(Entry Squenced DataSet)

3。相對記錄數據集RRDS(Relative Record Data Set)

存取方法

數據條帶技術基本要素

要弄明白數據條帶的優點,就有必要了解一下這種技術的原理。VSAM在控制區(CA)里按順序擺放了I/O基礎單元--控制間隔(CIs)諸如CA1,CA2等等控制區,它們包含了很多磁軌,這些磁軌呈直線安放在直接存取存儲器(DASD)上。如果集群擴展到其它卷,VSAM仍遵循同一規則在控制區裡有序安放控制間隔。

條帶式排列提高了按序處理效率,因為系統可以同時發起針對多卷的並行I/O訪問動作。條帶化幫助關鍵訪問比如線上套用能夠實現即時訪問一個卷的數據,而無需等待I/O結束對另一個數據卷的訪問。

VSAM還支持“層級”理念。IBM把該理念定義為將會包含在“I/O包”中的數據卷。實際上,一層代表了一個數據組擴展區,它們共享相同的數據記錄。當一個數據組擴展時,擴展區可能延伸到不同的數據卷上。VSAM可能會得到進一步最佳化,識別出每個層分別屬於哪個數據卷。

用戶可以對除AIXs(輔助索引)之外幾乎所有類型的VSAM集群進行條帶化。IBM也可以把條帶化限制在一個集群的數據組件上。

IBM提醒VSAM要支持多達16條帶。這意味著控制區可能伸展至16個磁軌而非傳統的15個磁軌,並且包含更多的控制間隔。對於(KSDS)關鍵性排序數據組,這就意味著指向數據模組(索引序列組)的索引控制間隔可能沒有足夠空間引用控制區的控制間隔。這就表明其本身是控制區末端不使用的控制間隔,或者說是某種空間浪費。為了充分利用這部分空間,存儲管理員一定要用較大的控制間隔來覆蓋默認的索引控制間隔。

鍵順序數據組織允許四種類型的處理:

1。鍵控直接處理(根據主鍵對單個邏輯記錄的處理)。

2。鍵控順序處理(在邏輯序列中根據主鍵對一系列邏輯記錄的處理)。

3。直接訪問處理(根據在檔案中的位置,對單個邏輯記錄的處理)。

4。順序訪問處理(在物理序列中,根據在檔案中的位置,對一系列邏輯記錄的處理)

VSAM數據集

為了滿足用戶的需要,程式設計師可以選擇不同的數據結構(數據集 / 檔案)。

3。1。KSDS

與ISAM檔案一樣,KSDS檔案根據用戶在每個記錄中所定義的鍵欄位作為次序,也就是檔案中的記錄根據在每個記錄中的鍵欄位的排序序列而定位,每個記錄在鍵欄位有唯一的一個值。VSAM使用與每個記錄相結合的鍵,把記錄插入到檔案中,或者從檔案中檢索記錄,記錄的存取次序可以是隨機的,也可以是順序的。

VSAM檔案可以有多個索引。這就是指檔案中的記錄,既有主鍵,也有次級鍵(替換鍵),但最多能有253個次級鍵,可以是記錄中的任何欄位,但必須有固定的長度和位置。

替換鍵與主鍵一樣具有同樣的功能,而且,與主鍵相比,替換鍵的鍵值不必是唯一的值,因此在套用處理中允許用戶能充分利用其靈活性。

數據記錄 數據記錄 。。。。。 數據記錄

KEY10 KEY88 KEY1000

根據數據記錄的鍵順序而組織的鍵順序檔案

3。2。ESDS

包含在檔案中的記錄,是以當時進入的先後順序而存儲在ESDS中,而

且,這種進入順序並不關心記錄的內容,由於沒有用鍵去標識該記錄,因而沒有建立主索引。但是,ESDS可以定義一個或多個替換索引。記錄的次序是固定的,不會移動的。因此,將不會通過檔案分配自由空間,新記錄的插入要放在檔案的末端,同時也不能縮短、增長、刪除記錄,用戶要訪問這些記錄時,必須按其原來寫入記錄的次序而順序地訪問檔案中的記錄。 所以,從本質上來說,ESDS是順序檔案,與SAM檔案的處理方法類似。

RRDS相對記錄檔案也沒有索引,在其固定長度的槽串中,僅有其相對記錄號。相對記錄號從 1到N,其中N是能夠存儲在檔案中最大的記錄數。

每一記錄占一個槽,並且根據槽的相對記錄號而存儲或檢索記錄,而記錄的內容與進入的順序無關。在相對記錄檔案中的記錄組成的控制區間中,正如它們進入順序檔案或鍵順序檔案一樣,每個控制區間包含相同數量的槽,每個槽的大小就是記錄長度,由用戶在檔案初始化定義時指定。

相關詞條

相關搜尋

熱門詞條

聯絡我們