⑴ 文件的物理結構有哪3種,分別具備什麼優缺點
一、順序結構
優點:
1、支持順序存取和隨機存取。
2、順序存取速度快。
3、所需的磁碟尋道次數和尋道時間最少。
缺點:
1、需要為每個文件預留若干物理塊以滿足文件增長的部分需要。
2、不利於文件插入和刪除。
二、鏈式結構
優點:
1、提高了磁碟空間利用率,不需要為每個文件預留物理塊。
2、有利於文件插入和刪除。
3、有利於文件動態擴充。
缺點:
1、存取速度慢,不適於隨機存取。
2、當物理塊間的連接指針出錯時,數據丟失。
3、更多的尋道次數和尋道時間。
4、鏈接指針佔用一定的空間,降低了空間利用率。
三、索引結構
優點:
1、不需要為每個文件預留物理塊。
2、既能順序存取,又能隨機存取。
3、滿足了文件動態增長、插入刪除的要求。
缺點:
1、較多的尋道次數和尋道時間。
2、索引表本身帶來了系統開銷。如:內外存空間,存取時間等。
拓展資料:
文件存取方法:
順序存取:順序存取是按照文件的邏輯地址順序存取。
固定長記錄的順序存取是十分簡單的。讀操作總是讀出上一次讀出的文件的下一個記錄,同時,自動讓文件記錄讀指針推進,以指向下一次要讀出的記錄位置。如果文件是可讀可寫的。再設置一個文件記錄指針,它總指向下一次要寫入記錄的存放位置,執行寫操作時,將一個記錄寫到文件 末端。允許對這種文件進行前跳或後退N(整數)個記錄的操作。順序存取主要用於磁帶文件,但也適用於磁碟上的順序文件。
可變長記錄的順序文件,每個記錄的長度信息存放於記錄前面一個單元中,它的存取操作分兩步進行。讀出時,根據讀指針值先讀出存放記錄長度的單元 。然後,得到當前記錄長後再把當前記錄一起寫到指針指向的記錄位置,同時,調整寫指針值 。
由於順序文件是順序存取的,可採用成組和分解操作來加速文件的輸入輸出。
直接存取(隨機存取法):
很多應用場合要求以任意次序直接讀寫某個記錄。例如,航空訂票系統,把特定航班的所有信息用航班號作標識,存放在某物理塊中,用戶預訂某航班時,需要直接將該航班的信息取出。直接存取方法便適合於這類應用,它通常用於磁碟文件。
為了實現直接存取,一個文件可以看作由順序編號的物理塊組成的,這些塊常常劃成等長,作為定位和存取的一個最小單位,如一塊為1024位元組、4096位元組,視系統和應用而定。於是用戶可以請求讀塊22、然後,寫塊48,再讀塊9等等。直接存取文件對讀或寫塊的次序沒有限制。用戶提供給操作系統的是相對塊號,它是相對於文件開始位置的一個位移量,而絕對塊號則由系統換算得到。
索引存取:
第三種類型的存取是基於索引文件的索引存取方法。由於文件中的記錄不按它在文件中的位置,而按它的記錄鍵來編址,所以,用戶提供給操作系統記錄鍵後就可查找到所需記錄。通常記錄按記錄鍵的某種順序存放,例如,按代表健的字母先後次序來排序。對於這種文件,除可採用按鍵存取外,也可以採用順序存取或直接存取的方法。信息塊的地址都可以通過查找記錄鍵而換算出。實際的系統中,大都採用多級索引,以加速記錄查找過程。
參考資料:網路:文件存取法
⑵ 資料庫裡面什麼是一級索引
多級索引
空間資料庫的索引是提高空間資料庫存儲效率和空間檢索性能的關鍵技術。介紹了空間資料庫中建立索引的常用技術,給出了一種多級空間索引,詳細討論了該索引的建立演算法以及應用該索引的檢索演算法,並進行了演算法分析。關鍵詞:計算機軟體;間資料庫;空間索引;空間檢索;演算法分析。
中文名
多級索引
方法
索引分割單元格網索引等
解釋
將多個索引方法組合使用
性質
計算機學
快速
導航
原理
含義
多級索引是將多個不同或相同的索引方法組合使用,對單級索引空間或者空間范圍進行多級劃分,解決超大型數據量的GIS系統檢索、分析、顯示的效率問題。多級索引由於其多級的結構特性,往往可以很好地利用計算機硬體資源的並行工作特性,如多CPU,磁碟陣列等,來提高檢索的效率。多級索引方法很多,不同的單級索引組合便可以構成不同的多級索引方法。但是由於每種索引的特性不同,所以如何將多種索引融合成一體構成一種高效的多級索引也是空間索引的一個研究方向。
⑶ 為什麼資料庫中用主鍵搜索比用其他屬性快
准確地說,應該是使用「聚集索引」(或稱「聚簇索引」,英文叫做「clustered index」)比一般索引更有效,但是一般的數據表主鍵被預設地採用聚集索引,所以,含糊一些的說法在大多數場合也成立。
籠統地評價這種索引的高效性,是因為這種索引的條目可以一站式直達數據存儲頁,而其它索引可能需要多級鏈表的逐步定位來找到最終的數據存儲頁;另外一個表只能有一個聚集索引,因為索引條目的排列順序和實際數據的排列順序完全相同,數據在磁碟中落地後,只會有一種順序,很容易理解。
⑷ 資料庫物理模型
資料庫物理模型設計的目標是根據選定的Oracle資料庫系統特點和航空物探數據管理與服務的業務處理需求,確定航空物探資料庫最優的物理環境、存取方法和存儲結構。即通過資料庫物理設計,以便達到物理資料庫結構的優化,使得在資料庫上運行的各種事務響應時間少、存儲空間利用率高、事務吞吐率大。
一、資料庫布局
航空物探信息系統的維護數據(部門、崗位、人員、人員許可權、數據入庫檢查規則及數據字典等)相對比較穩定。入庫前數據需經過各種檢查校對,確認數據正確後才能歸檔,存入航空物探資料資料庫,所以存入資料庫前的數據可能經常需要修改和刪除,相對變化較大;而存入資料資料庫中的數據一般不允許修改和刪除,以免誤操作破壞資料庫數據造成損失。
圖2-12 航空物探資料庫邏輯模型
圖2-13 航空物探資料庫布局與數據採集流程圖
據此,我們採用圖2-13所示的資料庫數據採集流程,並將航空物探資料庫分為資料採集資料庫、資料資料庫、系統維護資料庫分別進行存儲和管理,實現數據的統一管理和統一使用,便於數據入庫和易於維護等。
航空物探資料資料庫是航空物探所有數據最終存儲的場所。資料採集資料庫是數據歸檔存入資料資料庫前的臨時「集散地」,在此接收各項檢查,在確認數據無誤後歸檔到資料資料庫,然後刪除資料採集資料庫中已歸檔的數據。此外,資料採集資料庫中還保存數據入庫、維護、檢查日誌及歸檔記錄。
系統維護資料庫,存儲系統維護信息(如系統功能、資料庫表清單等)、安全信息(如信息系統用戶的角色、許可權、授權的系統功能等),數據字典、入庫數據檢查規則等。將其與航空物探數據分開,有利於系統維護和管理。
二、資料庫空間設置
資料庫空間設置包括磁碟空間設置、應用系統表空間設置、撤銷表空間、臨時表空間、日誌空間和索引空間設置。
(一)磁碟空間設置
磁碟空間設置的目標:磁碟性能不能阻礙實現資料庫性能,資料庫磁碟必須專用於資料庫文件,否則非資料庫將會影響到資料庫性能,且磁碟空間必須滿足恢復和性能的要求。
航空物探資料庫伺服器為IBM P620小型機,8塊硬碟,每塊硬碟36GB空間,每塊物理磁碟建立一個文件系統。為了提高磁碟的反應時間和尋道時間,提高I/O的存取效率,除了一塊硬碟用於UNIX操作系統外,其餘7塊磁碟分別存放資料採集資料庫、系統維護資料庫-日誌文件,資料資料庫及資料資料庫的大欄位數據、索引、回滾段和數據日誌文件。
(二)應用系統表空間設置
信息系統數據採集過程對數據的事務操作比較頻繁,經常進行數據插入(新數據入庫)、修改(入庫數據有誤)和刪除操作(數據重新導入或歸檔入庫),因此航空物探資料採集資料庫所在的表空間會很活躍。為了不影響其他I/O的競爭,同時也可以提高數據入庫的操作效率(50多年的歷史數據需要集中入庫),分配一個磁碟空間(36GB)為採集庫的表空間。由於採集數據歸檔入資料庫後被刪除,同時進行數據入庫的項目也不是很多,雖仍保留所有的採集日誌數據,一個磁碟空間也足夠使用。
航空物探資料資料庫的二維表和Oracle大欄位(BLOB)分別存放在不同的物理磁碟(每個磁碟36GB)上,對同時存在有表格數據和大欄位數據的資料庫表(如航跡線數據)時,可以提高磁碟I/O效率。隨著數據入庫的項目越來越多,需要增加相應的物理磁碟或磁碟陣列。
系統維護資料庫相對穩定,佔用磁碟空間約500 M左右。由於系統磁碟有限,把日誌文件存放該磁碟中。
(三)撤銷表和臨時表空間的設置
在Oracle資料庫中,撤銷的目的是確保事務的回退和恢復。撤銷參數有UNDO_MANAGEMENT、UNDO_TABLESPACE和UNDO_RETENTION。
UNDO_MANAGEMENT參數用於資料庫中管理撤銷數據的方式,航空物探資料庫設置為自動模式(auto)。
UNDO_TABLESPACE參數用於指定資料庫中保存撤銷數據的撤銷表空間名稱,航空物探資料庫撤銷表空間名稱為UNDO_ARGS_TBSPACE,空間大小設置為20GB,以確保在保留時間內進行恢復。
UNDO_RETENTION參數用於指定已經提交事務的撤銷數據在能夠覆蓋之前應該保留多長時間,本資料庫系統設置為60 min。
臨時表空間是用以存儲大量的排序,與撤銷表空間存放在一個物理磁碟上,本資料庫系統臨時表空間設置為500 M。
(四)日誌空間設置
日誌的主要功能是記錄對資料庫已做過的全部操作。在系統出現故障時,如果不能將修改數據永久地寫入數據文件,則可利用日誌得到該修改,所以不會丟失已有操作結果。
日誌文件主要是保護資料庫以防止故障。為了防止日誌文件本身的故障,航空物探資料庫系統分別在一個獨立磁碟和系統維護庫磁碟中存放日誌文件。若系統出現故障,在下次打開資料庫時Oracle資料庫系統自動用日誌文件中的信息來恢復資料庫文件。
根據航空物探資料庫信息系統同時登錄的用戶數及使用的功能,將日誌文件大小設置為10GB。
(五)索引表空間設置
為了提高航空物探信息系統的查詢和統計速度,把所有索引空間與應用表空間完全分開,從而提高I/O存取效率。航空物探索引表空間大小設置為10GB。
聚集是表的一種存儲方法,一般每個基本表是單獨組織的,但對邏輯上經常在一起查詢的表,在物理上也鄰近存放,這樣可減少數據的搜索時間,提高性能。
當幾個關系(表)以聚集方式組織時,是通過公共屬性的值為表聚集的依據。航空物探資料庫系統是以項目標識(PROJ_ID)建立聚集的,所有涉及項目標識的資料庫表直接引用項目標識聚集。航空物探聚集表空間與索引表空間相同。
三、資料庫參數設置
在資料庫創建前需要對如下資料庫參數進行設置,航空物探參數文件名為Initoraargs.ora,各種參數設置如下:
航空物探信息系統建設
四、內存設置
航空物探資料庫伺服器物理內存為4GB,除部分用於系統開銷外,其餘全部用於資料庫。
Oracle使用共享系統全局區(System Global Area,SGA)內存來管理內存和文件結構,包含DB_block_Buffers、DB_cache_size、Shared_pool_size、Log_Buffer參數。航空物探資料庫系統的全局區內存參數設置如下。
DB_block_Buffers參數為SGA中存儲區高速緩存的緩沖區數目,每個緩沖區的大小等於參數DB_block_size的大小,DB_block_Buffers=19200(約300 MB)。
Shared_pool_size參數為分配給共享SQL區的位元組數,是SGA大小的主要影響者,Shared_pool_size=1228800000(1.2GB)。
DB_cache_size參數是SGA大小和資料庫性能的最重要的決定因素。該值較高,可以提高系統的命中率,減少I/O,DB_cache_size=1024000000(1GB)。
Log_Buffer參數為重做日誌高速緩存大小,主要進行插入、刪除和修改回退操作,Log_buffer=5120000(5MB)。
五、優化設置
由於航空物探信息系統的採集軟體和應用軟體是採用MS.NET C#進行開發的,應用程序與資料庫之間的連接有傳統的ODBC和OLE DB兩種方式。為了支持ODBC在OLE DB技術上建立了相應的OLE DB到ODBC的調用轉換,而使用直接的OLE DB方式則不需轉換,從而提高處理速度。
在建立資料庫表時,參數Pctfree和Pctused設置不正確可能會導致數據出現行鏈接和行遷移現象,即同一行的數據被保存在不同的數據塊中。在進行數據查詢時,為了讀出這些數據,磁頭必須重新定位,這樣勢必會大大降低資料庫的執行速度。因此,在創建表時應充分估計到將來可能出現的數據變化,正確地設置這兩個參數,盡量減少資料庫中出現的行鏈接和行遷移現象。
航空物探資料採集資料庫表的插入、修改和刪除的頻率較高,Pctfree設置為20,Pctused設置為40;系統維護資料庫表相對穩定,Pctfree設置為10,Pctused設置為15;資料資料庫表除了增加數據外基本不進行修改和刪除操作,Pctfree設置為10,Pctused設置為5。
六、擴展性設置
多CPU和並行查詢PQO(Parallel Query Option)方式的利用:CPU的快速發展使得Oracle越來越重視對多CPU的並行技術的應用,一個資料庫的訪問工作可以用多個CPU相互配合來完成。對於多CPU系統盡量採用並行查詢選項方式進行資料庫操作。航空物探資料庫伺服器為2個CPU,在程序查詢中採用了並行查詢的方式。
在航空物探工作量統計、飛行小時統計、測量面積統計和岩石物性統計中,為了加快統計效率,在相應的查詢語句中增加了並行查詢語句。
隨著航空物探高精度測量程度的不斷提高,測量數據將越來越大。為了滿足航空物探查詢效率及發展,將航磁測量數據與校正後航磁測量數據按比例尺分1∶20 萬以下、20萬~50萬、1∶50萬以上分別存放3張不同的資料庫表。
七、創建資料庫
在完成資料庫布局、空間設置、內存設置、資料庫參數設置、擴展性設置和優化設置後,進行航空物探資料庫物理模型設計,即航空物探資料庫實體創建。由於航空物探空間資料庫邏輯模型是採用ESRI提供的ArcGIS UML構建的Geodatabase模型,因此,使用ESRI公司提供的CaseTools將航空物探數據UML模型圖轉成空間資料庫(Geodatabase)實體(圖2-14)。
航空物探屬性資料庫表(二維表)是採用Power Designer資料庫設計平台直接把資料庫關系模型生成資料庫腳本來創建的。
經過資料庫的概念設計、邏輯設計和物理設計,最終生成航空物探資料庫。
圖2-14 航空物探資料庫物理模型實現
八、空間數據的索引機制
對於海量的空間資料庫而言,資料庫的操作效率是關繫到資料庫成敗的關鍵問題。為了提高數據的訪問、檢索和顯示速度,數據在載入到資料庫時,要素類數據建立了空間索引,柵格數據構建了金字塔結構,對象類數據採用與資料庫直接聯接的訪問機制。
(一)空間索引
為了提高要素類數據的查詢性能,在建立航空物探空間資料庫時,創建了空間索引機制。常用的空間索引有格網索引、R樹索引、四叉樹索引等。Geodatabase採用格網索引方式。所謂格網索引是將空間區域劃分成適合大小的正方形格網,記錄每一個格網內所包含的空間實體(對象)以及每一個實體的封裝邊界范圍,即包圍空間實體的左下角和右上角坐標。當用戶進行空間查詢時,首先計算出用戶查詢對象所在格網,然後通過格網編號,就可以快速檢索到所需的空間實體。
確定適合的格網級數、單元大小是建立空間格網索引的關鍵。格網太大,在一個格網內有多個空間實體,查詢檢索的准確度降低。格網太小,則索引數據量成倍增長和冗餘,檢索的速度和效率較低。資料庫的每一數據層採用不同大小、不同級數的空間索引格網單元,但每層最多級數不能超過三級。格網單元的大小不是一個確定性的值,需要根據對象的大小確定。空間索引格網的大小與檢索准確度之間的關系如圖2-15所示。
選擇格網單元的大小遵循下列基本原則:
1)對於簡單要素的數據層,盡可能選擇單級索引格網。減少RDBMS搜索格網單元索引的級數,縮短空間索引搜索的過程,例如航跡線要素類。
圖2-15 索引格網大小與檢索准確度的關系
2)如果數據層中的要素封裝邊界大小變化比較大,應選擇2或3級索引格網。Geodatabase最多提供三級格網單元。每一要素封裝邊界在適合的級內,減少了每一封裝邊界有多個格網的可能性。在空間索引搜索過程中,RDBMS則必須搜索所有3個格網單元級,這將消耗大量的時間。
3)若用戶經常對圖層執行相同的查詢,最佳格網的大小應是平均查尋空間范圍的1.5倍。
4)格網的大小不能小於要素封裝邊界的平均大小,為了減少每個格網單元有多個要素封裝邊界的可能性,格網單元的大小應取平均格網單元的3倍。最佳格網單元的大小可能受圖層平均查詢的影響。
空間域是按照要素數據集定義的,空間索引格網是按照要素類設置的。它們都是在創建Geodatabase資料庫時設置,並一經設置,中間不許改變;所以一定要在充分分析數據的情況下確定它們的值。航空物探數據主要是簡單要素類,空間跨度為70°。根據上述原則,航空物探數據選擇單級索引格網,格網大小為20°。
(二)金字塔結構
金字塔結構的核心是將柵格數據逐級進行抽稀,形成多級解析度的重采樣數據,並將其分割成塊,按一定的文件格式(金字塔文件格式)存儲成磁碟文件;在以後進行圖像顯示處理時,只需將要顯示的部分所覆蓋的塊從磁碟文件直接讀進內存緩沖區顯示即可。從金字塔的所有層中尋找與所要求顯示的比例相近或匹配的一層,並將該層的從某一點起的一定范圍的圖像所覆蓋的所有塊載入到內存緩沖區,提取所需部分並形成圖像。
金字塔演算法(圖2-16)是通過獲取顯示時所需要的一定解析度的數據來提高顯示速度。使用金字塔數據格式後,在顯示全圖時僅需要顯示一個較低解析度的數據,這樣既能加快顯示速度,又不會影響顯示效果。放大圖像,盡管顯示圖像解析度提高,由於顯示區域減小,所以顯示速度不會下降。如果沒有為柵格數據建立金字塔數據,則每次顯示都會讀取整個數據,然後進行重采樣得到顯示所需要的解析度,明顯地降低了顯示速度。
圖2-16 金字塔壓縮示意圖
金字塔數據重采樣方式有:最近鄰法、雙線性內插和立方卷積。其中最近鄰法適用於離散數據,而雙線性內插法和立方卷積法適合於連續數據。
在ArcGIS Engine中提供了IRasterPyramid和IRasterPyramid2介面來實現金字塔數據的建立,而建立的數據保存在*.rrd格式的文件中。
(三)空間域定義
空間域是指數據的有效空間范圍,即Geodatabase資料庫的最大等效坐標的值域范圍,其定義主要是指比例系數和Min X、Min Y的計算。
因為使用整數比浮點數有更高的壓縮率,並且對整數進行二進制搜索比較快,所以多用戶Geodatabase以4位元組正整數存儲坐標,其最大值為32位正整數所能表示的范圍是21.4億(2147483647),整數的范圍稱為空間域。在創建Geodatabase資料庫時需要定義合適的比例系數。大的整數值將消耗大量的計算機物理內存,所以選定的比例系數最好不要大於必須的比例系數。空間域隨坐標系的單位變化而變化。
比例系數和空間域之間成反比例關系,比例系數越大(存儲單位越小),表達的空間域也越小。為了使目標數據都存儲在系統中,需要謹慎地設置比例系數。將目標數據的寬度和高度較適中的數值乘以比例系數,如果結果小於21.4億,則比例系數是合適的。
航空物探數據模型是為我國的航空物探行業數據建庫設計的,它支持的空間數據的坐標范圍為我國領土覆蓋的海陸空間,最低緯度為赤道。根據概念設計的分析,航空物探數據模型採用的是地理坐標系,坐標系單位是度,基準是Beijing_1954,要求存儲的坐標數據精度達到0.01 m。在赤道處,赤道圓周長為40075694.6 m,則每度弧長=40075694.6×100/360 cm=11132137.389 cm,即1 cm對應8.983000883E-8°。所以,航空物探數據模型的比例系數取為8.98E-8,即存儲單位為8.98E-8°,可滿足1 cm精度要求。
將空間域移動到目標數據范圍之前,首先找到空間域在存儲單位的中心位置,目的是在必要時向各個方向擴展。4位元組正整數可表示的坐標范圍:2147483647×8.98E-8=192.84°。我國的領土范圍是東經70°~140°,北緯0°~60°。所以,選取的比例系數是合適的。把空間域坐標系中心定為90°,然後,計算空間域的Min X、Min Y。
航空物探信息系統建設
航空物探信息系統建設
所以坐標的存儲數據是:
航空物探信息系統建設
航空物探信息系統建設
⑸ 求助各位大蝦,本科畢業設計做Oracle資料庫
主要從幾個不同方面設計ORACLE資料庫優化方案:
一.資料庫優化自由結構OFA(Optimal flexible Architecture)
二、充分利用系統全局區域SGA(SYSTEM GLOBAL AREA)
三、資料庫設計中的優化策略
數據應當按兩種類別進行組織:頻繁訪問的數據和頻繁修改的數據。對於頻繁訪問但是不頻繁修改的數據,內部設計應當物理不規范化。對於頻繁修改但並不頻繁訪問的數據,內部設計應當物理規范化。
四、合理設計和管理表
1、利用表分區
分區將數據在物理上分隔開,不同分區的數據可以制定保存在處於不同磁碟上的數據文件里。
2、避免出現行連接和行遷移
3、控制碎片
4、別名的使用
別名是大型資料庫的應用技巧,就是表名、列名在查詢中以一個字母為別名,查詢速度要比建連接錶快1.5倍。
5、回滾段的交替使用
五、索引Index的優化設計
1、管理組織索引
索引可以大大加快資料庫的查詢速度,索引把表中的邏輯值映射到安全的RowID,因此索引能進行快速定位數據的物理地址。
六、多CPU和並行查詢PQO(Parallel Query Option)方式的利用
七、實施系統資源管理分配計劃
ORACLE 提供了Database Resource Manager(DRM,資料庫資源管理器)來控制用戶的資源分配,DBA可以用它分配用戶類和作業類的系統資源百分比。在一個OLDP系統中,可給聯機用戶分配75%的CPU資源,剩下的25%留給批用戶。另外,還可以進行CPU的多級分配。除了進行CPU資源分配外,DRM還可以對資源用戶組執行並行操作的限制。
八、使用最優的資料庫連接和SQL優化方案
九、充分利用數據的後台處理方案減少網路流量
1、合理創建臨時表或視圖
2、資料庫打包技術的充分利用
利用資料庫描述語言編寫資料庫的過程或函數,然後把過程或函數打成包在資料庫後台統一運行包即可。
3、數據復制、快照、視圖,遠程過程調用技術的運用
⑹ 談談資料庫索引 用自己話說
索引是個大學問,三言兩語還說不清楚,試試:
1. 為什麼要索引?主要提高性能,如查詢速度。
2.索引為什麼能提高性能? 這個簡單,想想那種帶標簽的英文字典(注意不是指目錄)。按26個字母分組。假設你要找friend這個詞,你只要找到F標簽頁,再順序找這個詞。如果沒有這個標簽,你得從A一直找到F,再找到這個詞。快速定位到F標簽頁,就是索引提高性能的原理。具體到資料庫,標簽也可以現象為為每個磁碟塊建的索引塊,裡面表明了本磁碟塊存儲的數據范圍(索引值范圍)。
3. 索引的種類?用老師的點名冊做例子,除了按學號排序,還可以按成績排序。成績也就成了一種索引。先按成績,再按學號排序,也就多級索引。按不同的角度還可以區分好多類,建議學習專業書籍。
4. 索引的演算法?資料庫一般用B+樹的索引演算法。這個是個多叉的平衡的樹,平衡的概念是每個分支上的葉子節點差不太多。此樹一般高度(深度)不大,插入開銷比較可控。查詢性能優異。
5. 你再問吧。。
看我這么辛苦的碼字,為了啥?為人民服務,耶!
⑺ 資料庫系統關於多級索引的4個測試題.
max6blocks(each bitmap vector assigned a block),or min 2 blocks(multipule bitmap vectors assigned the same bloc),it depends the storagefor bitmapvectors
15,000 blocks
250,000 blocks
這個我能力不夠,沒看懂
⑻ 基礎資料庫
(一)數據內容
基礎資料庫包括系統運行前所採集到的所有支撐數據,數據的具體內容在數據分類與數據源章節中已描述,概括可分為以下幾類。
(1)遙感影像數據:包括歷史圖像數據,以及按照一定監測周期更新的遙感圖像數據。
(2)數字線劃圖數據:矢量數據(現狀專題圖和歷史專題圖數據)、柵格數據、元數據等。入庫前數據以ArcInfoCoverage格式分幅或整體存儲,採用地理坐標系統。
(3)數字柵格圖數據:包括1∶5萬和1∶10萬基礎地理圖形數據的掃描柵格數據。
(4)數字高程模型數據:塔里木河幹流河道1∶1萬和「四源一干」區域1∶10萬數字高程模型。
(5)多媒體數據:考察照片、錄像、錄音和虛擬演示成果等多媒體資料。
(6)屬性數據:社會經濟與水資源數據、水利工程數據、生態環境數據等。
(二)數據存儲結構
1.柵格數據
柵格數據包括遙感影像、數字柵格圖、數字正射影像圖、數字高程模型等,這些數據的存儲結構基本類似,因此可進行統一設計。遙感圖像資料庫與普通的圖像資料庫在存儲上有些差別,遙感圖像作為感測器對地理、空間環境在不同條件下的測量結果(如光譜輻射特性、微波輻射特性),必須結合同時得到的幾個圖像才可以認為是對環境在一定的時間條件下的完整的描述,也即是說,可能需要一個圖像集合才能構成一個圖像的完整的概念,並使之與語義信息產生聯系(羅睿等,2000)。因此,遙感圖像數據存儲結構模型必須能夠描述幾個圖像(波段)之間的邏輯關系。利用ArcSDE進行數據入庫時,系統可自動建立各圖像(波段)之間的關系,並按一定規則存儲在資料庫系統中。
對柵格數據在後台將採用Oracle資料庫管理系統進行存儲。Oracle系統可直接存儲影像信息,並具有較強的數據管理能力,可以實現柵格數據信息的快速檢索和提取。數據引擎採用ArcSDE,實現各類影像數據的入庫。數據存儲的關鍵是建立圖幅索引,本系統數據的存儲按圖幅號、圖名、採集時間等內容建立索引。
柵格數據依據圖形屬性一體化的存儲思想,採用大二進制格式直接存儲數據,這種方式的存儲可實現內容的快速檢索查詢,按索引表檢索出相關項後可直接打開柵格數據,提高柵格數據的管理效率。
2.矢量數據
本系統採用圖屬一體化思想即將空間數據和屬性數據合二為一,全部存在一個記錄集中的思想存儲空間數據,是目前GIS數據非常流行的存儲方法。考慮到數據的具體情況,決定採用資料庫存儲空間數據和屬性數據,部分具有少量、定型幾何信息的地理要素如水文測站、河流、湖泊等,採用圖屬一體化思想存儲其信息,而與其有關聯關系的大量、多邊化的屬性信息如水文信息,則存儲在屬性數據表中,利用唯一標識符信息建立兩表的關聯。
針對本系統空間數據的特點,系統按照「資料庫—子庫—專題(基礎數據)—層—要素—屬性」的層次框架來構築空間資料庫,按照統一的地理坐標系統來存儲空間數據,以實現對地理實體/專題要素進行分層疊加顯示。
3.多媒體數據
Oracle系統可直接存儲圖片和視頻信息,並具有較強的數據管理能力,可以實現多媒體信息的快速檢索和提取。多媒體數據存儲的關鍵是建立索引表,本系統多媒體數據的存儲按類型、時間、內容等項目建立索引,直接存儲於Oracle資料庫中。
多媒體數據存儲時,可以將多媒體內容與索引表結構合為一體,採用大二進制格式直接存儲,這種存儲方式可實現內容的快速檢索和查詢,按索引表檢索出相關項後可直接打開多媒體內容,而且多媒體資料庫也便於維護管理。
(三)空間索引設計
1.矢量空間索引
確定合適的格網級數、單元大小是建立空間格網索引的關鍵。格網太大,在一個格網內有多個空間實體,查詢檢索的准確度就低。格網太小,則索引數據量成倍增長和冗餘,檢索的速度和效率低。每一個數據層可採用不同大小、不同級別的空間索引格網單元,但每層級數最多不能超過三級。索引方式設置遵循以下基本原則:
(1)對於簡單要素的數據層,盡可能選擇單級索引格網,減少RDBMS搜索格網單元索引的級數,縮短空間索引搜索的過程;
(2)如果數據層中的要素封裝邊界大小變化比較大,應選擇2或3級索引格網;
(3)如果用戶經常對圖層執行相同的查詢,最佳格網的大小應是平均查詢范圍的1.5倍;
(4)格網的大小不能小於要素封裝邊界的平均大小。為了減少每個格網單元有多個要素封裝邊界的可能性,格網單元的大小應取要素封裝邊界平均大小的3倍;
(5)格網單元的大小不是一個確定性的問題,需要多次嘗試和努力才會得到好的結果。有一些確定格網初始值的原則,用它們可以進一步確定最佳的格網大小。
SDE(Spatial Data Engine,即空間數據引擎),從空間管理的角度看,是一個連續的空間數據模型,可將地理特徵的空間數據和屬性數據統一集成在關系型資料庫管理系統中。關系型資料庫系統支持對海量數據的存儲,從而也可實現對空間數據的海量存儲。空間數據可通過層來進行數據的劃分,將具有共同屬性的一類要素放到一層中,每個資料庫記錄對應一層中一個實際要素,這樣避免了檢索整個數據表,減少了檢索的數據記錄數量,從而減少磁碟輸入/輸出的操作,加快了對空間數據查詢的速度。
ArcSDE採用格網索引方式,將空間區域劃分成合適大小的正方形格網,記錄每一個格網內所包含的空間實體(對象),以及每一個實體的封裝邊界范圍,即包圍空間實體的左下角和右上角坐標。當用戶進行空間查詢時,首先計算出用戶查詢對象所在格網,然後通過格網號,就可以快速檢索到所需的空間實體。因此確定合適的格網級數、單元大小是建立空間格網索引的關鍵,太大或太小均不合適,這就需要進行多次嘗試,確定合適的網格大小,以保證各單元能均勻落在網格內。利用ArcSDE的索引表創建功能,記錄每一網格單元的實體分布情況,形成圖層空間索引表。根據空間索引表,ArcSDE實現了對空間數據的快速查詢。
2.柵格數據空間索引
柵格數據的空間索引通過建立多級金字塔結構來實現。以高解析度柵格數據為底層,逐級抽取數據,建立不同解析度的數據金字塔結構,逐級形成較低解析度的柵格數據。該方法通常會增加20%左右的存儲空間,但卻可以提高柵格數據的顯示速度。在資料庫查詢檢索時,調用合適級別的柵格數據,可提高瀏覽和顯示速度。
(四)入庫數據校驗
入庫數據的質量關繫到系統評價分析結果的准確性。數據在生產中就需要嚴格進行質量控制。依據數據生產流程,將數據質量控制分成生產過程式控制制和結果控制。生產過程式控制制包括數據生產前期的質量控制、數據生產過程中的實時質量控制,結果質量控制為數據生產完成後的質量控制(裴亞波等,2003)。對入庫數據的校驗主要是進行數據生產完成後的質量控制和檢查。
1.規范化檢查
(1)代碼規范化:所有地理代碼盡量採用國家標准和行業標准,例如,行政代碼採用中華人民共和國行政區劃代碼國標。
(2)數據格式規范化:所有數據採用標准交換數據格式,例如,矢量數據採用標准輸出Coverage格式和E00格式。
(3)屬性數據和關系數據欄位規范化:所有屬性數據和關系數據提前分門別類地設計欄位的內容、長短和格式,操作過程中嚴格執行。
(4)坐標系統規范化:本系統所有與空間有關的數據採用統一的空間坐標系統,即地理坐標系統。
(5)精度規范化:所有數據按照數據精度與質量控制中所要求的精度進行採集和處理。
(6)命名規范化:所有數據按照命名要求統一命名,便於系統的查詢。
(7)元數據規范化:依照元數據標准要求,進行元數據檢查。
2.質量控制
數據質量是GIS成敗的關鍵。對於關系型資料庫設計,只要能保證表的實體完整性和參照完整性,並使之符合關系資料庫的三個範式即可。對於空間資料庫設計,則不僅要考慮數據采樣、數據處理流程、空間配准、投影變換等問題,還應對數據質量做出定量分析。
數據質量一般可以通過以下幾個方面來描述(吳芳華等,2001):
(1)准確度(Accuracy):即測量值與真值之間的接近程度,可用誤差來衡量;
(2)精度(Precision):即對現象描述得詳細程度;
(3)不確定性(Uncertainty):指某現象不能精確測得,當真值不可測或無法知道時,就無法確定誤差,因而用不確定性取代誤差;
(4)相容性(Compatibility):指兩個來源不同的數據在同一個應用中使用的難易程度;
(5)一致性(Consistency):指對同一現象或同類現象表達的一致程度;
(6)完整性(Completeness):指具有同一準確度和精度的數據在類型上和特定空間范圍內完整的程度;
(7)可得性(Accessibility):指獲取或使用數據的容易程度;
(8)現勢性(Timeliness):指數據反映客觀現象目前狀況的程度。
塔里木河流域生態環境動態監測系統的所有數據在數據質量評價後,還需要從數據格式、坐標一致性等方面進行入庫質量檢驗,只有通過質量檢驗的數據才可以入庫。
3.數據檢驗
空間數據質量檢驗包括以下步驟:
(1)數據命名是否規范,是否按設計要求命名;
(2)數據是否能夠正常打開;
(3)投影方式是否正確;
(4)坐標系統是否正確;
(5)改錯是否完成,拓撲關系是否建立;
(6)屬性數據是否正確,包括欄位設置是否依據設計進行、是否有空屬性記錄、是否有屬性錯誤記錄等。
關系數據質量檢驗包括以下步驟:
(1)數據命名是否規范,是否按設計要求命名;
(2)數據是否能夠正常打開;
(3)數據欄位是否按設計要求設置;
(4)是否有空屬性記錄;
(5)是否有屬性錯誤記錄。
屬性數據的校驗,主要採用以下三種方式:
(1)兩次錄入校驗:對一些相互之間毫無關聯的數據,進行兩次的錄入,編寫程序對兩次錄入的結果進行比較,找出兩次錄入結果不一樣的數據,查看正確值,進行改正。
(2)折線圖檢驗:對一些相互之間有關聯的序列數據,如人口統計數據,對這一類數據,編寫程序把數據以折線圖的形式顯示在顯示器上,數據的序列一般都有一定規律,如果出現較大的波動,則需對此點的數據進行檢查修改。
(3)計算校驗:對一些按一定公式計算後所得結果與其他數據有關聯的數據,如某些數據的合計等於另一數據,編寫程序對這類數據進行計算,計算結果與有關聯的數據進行比較,找出結果不一樣的數據,查看正確值,進行改正。
圖形數據的校驗,主要包括以下步驟(陳俊傑等,2005):
(1)圖層校驗:圖形要素的放置圖層是唯一的。對於入庫的Coverage數據,系統將根據圖層代碼進行檢查,確保圖形要素對層入座。
(2)代碼檢查:圖形要素的代碼是唯一的。對於入庫的Coverage數據,系統將根據入庫要素代碼與特徵表中的代碼進行比較,確保入庫數據代碼存在,杜絕非法代碼入庫。
(3)類型檢查:對入庫的數據,檢查該要素的類型與特徵表中的類型是否一致,確保圖形要素對表入座。如點要素、線要素、面要素僅能賦相應的點、線、面代碼,且該代碼必須與特徵表中的數據類型代碼相同。
(4)范圍檢查:根據入庫的數據,確定該類要素的大體范圍(如X、Y坐標等),在數據入庫前,比較入庫數據與范圍數據的大小,若入庫數據在該范圍內,則入庫,否則給出提示檢查信息。
(五)數據入庫
1.遙感影像數據
利用空間數據引擎———ArcSDE可實現遙感影像數據在Oracle資料庫中的存儲和管理,在影像數據進行入庫時,應加入相應的索引和影像描述欄位。
遙感影像入庫步驟:
(1)影像數據預處理:要將塔里木河遙感影像資料庫建成一個多解析度無縫影像資料庫系統,客觀上要求資料庫中的影像數據在幾何空間、灰度空間連續一致。因此,在數據採集階段就需要對影像數據進行預處理,包括圖像幾何校正、灰度拼接(無縫鑲嵌)、正射處理、投影變換等。
幾何校正的目的是使校正後的圖像重新定位到某種地圖投影方式,以適用於各種定位、量測、多源影像的復合及與矢量地圖、DTM等的套合顯示與處理。幾何校正多採用二次多項式演算法和圖像雙線性內插重采樣法進行圖像校正。將糾正後具有規定地理編碼的圖像按多邊形圈定需要拼接的子區,逐一鑲嵌到指定模版,同時進行必要的色彩匹配,使整體圖像色調一致,完成圖像的幾何拼接,再採用金字塔影像數據結構和「從粗到精」的分層控制策略實現逐級拼接。
數字正射影像具有統一的大地坐標系、豐富的信息量和真實的景觀表達,易於製作具有「獨立於比例尺」的多級金字塔結構影像。可以採用DTM和外方位元素經過數字微分糾正方法,獲得數字正射影像,它的基本參數包括原始影像與正射影像的比例尺、采樣解析度等(方濤等,1997)。
投影變換需根據資料庫系統定義的標准轉換到統一的投影體系下。
(2)影像數據壓縮:隨著感測器空間解析度的提高和對遙感信息需求的日益增長,獲取的影像數據量成幾何級數增大,如此龐大的數據將佔用較大的存儲空間,給影像的存儲和傳輸帶來不便(葛詠等,2000)。目前,系統處理的遙感影像數據已達數百千兆,單個文件的影像數據最大達到了2G,這樣的數據量在調用顯示時速度很慢,對影像數據進行壓縮存儲,將大大提高影像訪問效率。本系統採用ArcSDE軟體提供的無損壓縮模式對入庫影像進行壓縮。
(3)影像導入:遙感影像的入庫可通過ArcSDE或入庫程序進行導入,並填寫相關的索引信息,在入庫時對大型的遙感影像數據進行自動分割,分為若乾的塊(tiles)進行存儲。
(4)圖像金字塔構建:採用ArcSDE提供的金字塔構建工具在入庫時自動生成圖像金字塔,用戶只需要選擇相應的參數設置即可。圖像金字塔及其層級圖像按解析度分級存儲與管理。最底層的解析度最高,並且數據量最大,解析度越低,其數據量越小,這樣,不同的解析度遙感圖像形成了塔式結構。採用這種圖像金字塔結構建立的遙感影像資料庫,便於組織、存儲與管理多尺度、多數據源遙感影像數據,實現了跨解析度的索引與瀏覽,極大地提高了影像數據的瀏覽顯示速度。
2.數字線劃圖
對紙圖數字化、配准、校正、分層及拼接等處理後,生成標准分幅和拼接存儲的數字矢量圖,就可以進行圖形數據入庫。
(1)分幅矢量圖形數據、圖幅接合表:按圖形比例尺、圖幅號、製作時間、圖層等方式,通過入庫程序導入到資料庫中,同時導入與該地理信息相對應的屬性信息,建立空間信息與屬性信息的關聯。
(2)拼接矢量圖形數據:按圖形比例尺、製作時間、圖層等方式,通過入庫程序導入到資料庫中,同時導入與該地理信息相對應的屬性信息,建立空間信息與屬性信息的關聯。
3.柵格數據
對紙圖數字化、配准、校正、分層及拼接等處理後,生成標准分幅和整體存儲的數字柵格圖,然後進行圖形數據入庫。
(1)分幅柵格圖形數據、圖幅接合表:按圖形比例尺、圖幅號、製作時間等方式,通過入庫程序導入到資料庫中。
(2)整幅柵格圖形數據:按比例尺、製作時間等方式,通過入庫程序導入到資料庫中。
4.數字高程模型
(1)分幅數字高程模型數據、圖幅接合表:按圖形比例尺、圖幅號、製作時間等方式,通過入庫程序導入到資料庫中。
(2)拼接數字高程模型數據:按比例尺、製作時間等方式通過入庫程序導入到資料庫中。
5.多媒體數據
多媒體數據入庫可根據多媒體資料庫內容的需要對入庫數據進行預處理,包括音頻、視頻信息錄制剪接、文字編輯、色彩選配等。對多媒體信息的加工處理需要使用特定的工具軟體進行編輯。由於音頻信息和視頻信息數據量巨大,因此,對多媒體數據存儲時需採用數據壓縮技術,現在的許多商用軟體已能夠直接存儲或播放壓縮後的多媒體數據文件,這里主要考慮根據數據顯示質量要求選擇採用不同的存儲格式。圖4-2為各類多媒體數據的加工處理流程。
圖4-2 多媒體數據加工處理流程圖
6.屬性數據
將收集的社會經濟、水利工程、生態環境等屬性資料,進行分析整理,輸入計算機,最後經過程序的計算處理,存儲到資料庫中,具體流程如圖4-3所示。
圖4-3 屬性數據入庫流程圖
⑼ 建立空間索引
11.4.4.1矢量數據的空間索引
在關系資料庫中,建立屬性項的索引可加快屬性數據的查詢,同樣,ArcSDE通過建立圖層的空間索引表(或S表),以減少Shape-Shape的比較運算,在ArcSDE的客戶端使用空間過濾器減少從資料庫返回的記錄數,可以避免檢索整個表,減少檢索的數據記錄數量,從而減少數據的輸入/輸出的操作,加快了空間數據查詢的速度(毛鋒等,2000)。
ArcSED採用格網索引方式。格網索引是將空間區域劃分成合適大小的正方形格網,記錄每一個格網內所包含的空間實體(對象),以及每一個實體的封裝邊界范圍,即包圍空間實體的左下角和右上角坐標。當用戶進行空間查詢時,首先計算出用戶查詢對象所在網格,然後通過格網號,就可以快速檢索到所需要的空間實體。
因此,確定合適的格網級數、單元大小是建立空間格網索引的關鍵。格網單元的大小不是一個確定的問題,需要多次嘗試方可得到。格網太大,在一個格網內有多個空間實體,查詢檢索的准確度低。格網太小,則索引數量成倍增長和冗餘,檢索的速度和效率低。為提高資料庫的工作效率,國土資源遙感綜合調查基礎資料庫中的每一個數據層採用不同大小、不同級數的空間索引網格單元。
11.4.4.2柵格數據的空間索引
柵格數據的空間索引可通過建立多級金字塔結構實現。金字塔結構是柵格數據集的解析度遞減的反映,用來提供顯示階性能。建立金字塔的目的就在於優化顯示的性能和效率。金字塔最底層的解析度總是最高,依次向上遞減。金字塔通過只取得滿足顯示要求的相應解析度的數據來提高柵格顯示階性能,當建立金字塔時,更多的柵格會被持續創建直到到達定點或者層數上限,當應用程序縮小視圖范圍(zoom out)或者柵格方格小於解析度閾值時,ArcSDE將選擇金字塔中的一個更高的層次。每一個柵格數據集可根據本身數據解析度的情況採用不同級數的金字塔結構。