① 資料庫邏輯結構設計和物理結構設計
一般可將資料庫結構設計分為四個階段,即需求分析、概念結構設計、邏輯結構設計和物理設計。
邏輯結構設計的任務是把概念模型,例如E-R圖轉換成所選用的具體的DBMS所支持的數據模型。在設計關系模型時,為了將來查詢統計的需要,也有些是為了標准化的需要,對於某些屬性要採用代碼。
對一個給定的邏輯數據模型求取與應用需要相適應的物理結構的過程稱為資料庫物理設計。這種物理結構主要指資料庫在物理設備上的存儲結構和存取方法。對於關系資料庫系統,數據的存儲結構與存取方法由DBMS決定並自動實現,我們物理設計主要考慮的是在網路環境下資料庫的分布及索引結構。
② 資料庫邏輯設計和物理設計包含哪些內容
資料庫邏輯設計是整個設計的前半段,包括所需的實體和關系,實體規范化等工作。設計的後半段則是資料庫物理設計,包括選擇資料庫產品,確定資料庫實體屬性(欄位)、數據類型、長度、精度確定、dbms頁面大小等。
③ 簡述一下SQL Server 資料庫的物理結構
資料庫設計的過程(六個階段)
1.需求分析階段
准確了解與分析用戶需求(包括數據與處理)
是整個設計過程的基礎,是最困難、最耗費時間的一步
2.概念結構設計階段
是整個資料庫設計的關鍵
通過對用戶需求進行綜合、歸納與抽象,形成一個獨立於具體DBMS的概念模型
3.邏輯結構設計階段
將概念結構轉換為某個DBMS所支持的數據模型
對其進行優化
4.資料庫物理設計階段
為邏輯數據模型選取一個最適合應用環境的物理結構(包括存儲結構和存取方法)
5.資料庫實施階段
運用DBMS提供的數據語言、工具及宿主語言,根據邏輯設計和物理設計的結果
建立資料庫,編制與調試應用程序,組織數據入庫,並進行試運行
6.資料庫運行和維護階段
資料庫應用系統經過試運行後即可投入正式運行。
在資料庫系統運行過程中必須不斷地對其進行評價、調整與修改
設計特點:
在設計過程中把資料庫的設計和對資料庫中數據處理的設計緊密結合起來將這兩個方面的需求分析、抽象、設計、實現在各個階段同時進行,相互參照,相互補充,以完善兩方面的設計
④ .資料庫設計分為幾個階段,各階段的任務是什麼
資料庫設計分為6個階段,各階段的任務如下:
1.需求分析階段:准確了解與分析用戶需求(包括數據與處理);
2.概念結構設計階段:通過對用戶需求進行綜合、歸納與抽象,形成一個獨立於具體DBMS的概念模型;
3.邏輯結構設計階段:將概念結構轉換為某個DBMS所支持的數據模型,對其進行優化;
4.資料庫物理設計階段:為邏輯數據模型選取一個最適合應用環境的物理結構(包括存儲結構和存取方法);
5.資料庫實施階段:運用DBMS提供的數據語言、工具及宿主語言,根據邏輯設計和物理設計的結果
,建立資料庫,編制與調試應用程序,組織數據入庫,並進行試運行;
6.資料庫運行和維護階段:資料庫應用系統經過試運行後即可投入正式運行。
資料庫的定義:
資料庫是依照某種數據模型組織起來並存放二級存儲器中的數據集合。這種數據集合具有如下特點:盡可能不重復,以最優方式為某個特定組織的多種應用服務,其數據結構獨立於使用它的應用程序,對數據的增、刪、改和檢索由統一軟體進行管理和控制。從發展的歷史看,資料庫是數據管理的高級階段,它是由文件管理系統發展起來的。
資料庫的性質:
1、整體性:資料庫是一個單位或是一個應用領域的通用數據處理系統,他存儲的是屬於企業和事業部門、團體和個人的有關數據的集合。資料庫中的數據是從全局觀點出發建立的,他按一定的數據模型進行組織、描述和存儲。其結構基於數據間的自然聯系,從而可提供一切必要的存取路徑,且數據不再針對某一應用,而是面向全組織,具有整體的結構化特徵。
2、共享性:資料庫中的數據是為眾多用戶所共享其信息而建立的,已經擺脫了具體程序的限制和制約。不同的用戶可以按各自的用法使用資料庫中的數據;多個用戶可以同時共享資料庫中的數據資源,即不同的用戶可以同時存取資料庫中的同一個數據。數據共享性不僅滿足了各用戶對信息內容的要求,同時也滿足了各用戶之間信息通信的要求。
資料庫軟體
⑤ 資料庫物理模型
資料庫物理模型設計的目標是根據選定的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。
航空物探信息系統建設
航空物探信息系統建設
所以坐標的存儲數據是:
航空物探信息系統建設
航空物探信息系統建設
⑥ 資料庫的物理結構設計指的是什麼
Log File物理結構
log block結構分為日誌頭段、日誌記錄、日誌尾部
Block Header,佔用12位元組
Data部分
Block tailer,佔用4位元組
Block Header
這個部分是每個Block的頭部,主要記錄的塊的信息
Block Number,表示這是第幾個block,佔用4位元組,是通過LSN計算得來的,佔用4位元組
Block data len,表示該block中有多少位元組已經被使用了,佔用2位元組
First Rec offet,表示該block中作為第一個新的mtr開始的偏移量,佔用2位元組
Checkpoint number,表示該log block最後被寫入時的檢查點的值,佔用4位元組
⑦ 什麼是資料庫的概念設計,邏輯設計,物理設計,以及
資料庫設計過程包括:
現實世界→需求分析→概念設計→邏輯設計→物理設計
概念設計——利用數據模型進行概念資料庫的模式設計。它不依賴任何DBMS(資料庫管理系統)常用的數據模型為ERM(實體聯系模型),用到的術語有:實體、屬性、聯系、鍵。
邏輯設計——把概念設計得到的概念資料庫模式變為邏輯數據模式,它依賴於DBMS。用到的術語有:函數依賴、範式、關系分解。
物理結構設計——指的是根據資料庫的邏輯結構來選定RDBMS(如Oracle、Sybase等),並設計和實施資料庫的存儲結構、存取方式等。
確定資料庫的物理結構包含下面四方面的內容:
1、確定數據的存儲結構;
2、設計數據的存取路徑;
3、確定數據的存放位置;
4、確定系統配置。
資料庫物理設計過程中需要對時間效率、空間效率、維護代價和各種用戶要求進行權衡,選擇一個優化方案作為資料庫物理結構。在資料庫物理設計中,最有效的方式是集中地存儲和檢索對象。
⑧ 關於SQL資料庫物理結構設計
建議你裝個powerdesigner。然後在裡面建表,表關系。然後可以導出物理結構。
powerdesigner
是非常好的資料庫設計工具,強烈推薦!
⑨ 資料庫物理設計的介紹
資料庫設計工作包含兩方面的內容:資料庫邏輯設計:設計資料庫的邏輯結構,與具體的DBMS無關,主要反映業務邏輯。資料庫物理設計:設計資料庫的物理結構,根據資料庫的邏輯結構來選定RDBMS(如Oracle、Sybase等),並設計和實施資料庫的存儲結構、存取方式等。