❶ Oracle資料庫的物理結構有哪些
Oracle資料庫的體系結構包括四個方面:資料庫的物理結構、邏輯結構、內存結構及進程。
1. 物理結構
物理資料庫結構是由構成資料庫的操作系統文件所決定,Oracle資料庫文件包括:
數據文件(Data File)
數據文件用來存儲資料庫中的全部數據,例如資料庫表中的數據和索引數據.通常以為*.dbf格式,例如:userCIMS.dbf 。
日誌文件(Redo Log File)
日誌文件用於記錄資料庫所做的全部變更(如增加、刪除、修改)、以便在系統發生故障時,用它對資料庫進行恢復。名字通常為Log*.dbf格式,如:Log1CIMS.dbf,Log2CIMS.dbf 。
控制文件(Control File)
每個Oracle資料庫都有相應的控制文件,它們是較小的二進制文件,用於記錄資料庫的物理結構,如:資料庫名、資料庫的數據文件和日誌文件的名字和位置等信息。用於打開、存取資料庫。名字通常為Ctrl*ctl 格式,如Ctrl1CIMS.ctl。
配置文件
配置文件記錄Oracle資料庫運行時的一些重要參數,如:數據塊的大小,內存結構的配置等。名字通常為init*.ora 格式,如:initCIMS.ora 。
2 邏輯結構
Oracle資料庫的邏輯結構描述了資料庫從邏輯上如何來存儲資料庫中的數據。邏輯結構包括表空間、段、區、數據塊和模式對象。資料庫的邏輯結構將支配一個資料庫如何使用系統的物理空間.模式對象及其之間的聯系則描述了關系資料庫之間的設計.
一個資料庫從邏輯上說是由一個或多個表空間所組成,表空間是資料庫中物理編組的數據倉庫,每一個表空間是由段(segment)組成,一個段是由一組區(extent)所組成,一個區是由一組連續的資料庫塊(database block)組成,而一個資料庫塊對應硬碟上的一個或多個物理塊。一個表空間存放一個或多個資料庫的物理文件(即數據文件).一個資料庫中的數據被邏輯地存儲在表空間上。
表空間(tablespace)
Oracle資料庫被劃分為一個或多個稱為表空間的邏輯結構,它包括兩類表空間,System表空間和非System表空間,其中,System表空間是安裝資料庫時自動建立的,它包含資料庫的全部數據字典,存儲過程、包、函數和觸發器的定義以及系統回滾段。除此之外,還能包含用戶數據。。
一個表空間包含許多段,每個段有一些可以不連續的區組成,每個區由一組連續的數據塊組成,數據塊是資料庫進行操作的最小單位。
每個表空間對應一個或多個數據文件,每個數據文件只能屬於一個表空間。
資料庫塊(database block)
資料庫塊也稱邏輯塊或ORACLE塊,它對應磁碟上一個或多個物理塊,它的大小由初始化參數db-block-size(在文件init.ora中)決定,典型的大小是2k。Pckfree 和pctused 兩個參數用來優化數據塊空間的使用。
區(extent)
區是由一組連續的數據塊所組成的資料庫存儲空間分配的邏輯單位。
段(segment)
段是一個或多個不連續的區的集合,它包括一個表空間內特定邏輯結構的所有數據,段不能跨表空間存放。Oracle資料庫包括數據段、索引段、臨時段、回滾段等。
模式對象(schema object)
Oracle資料庫的模式對象包括表、視圖、序列、同意詞、索引、觸發器、存儲.過程等,關於它們將重點在後面章節介紹。
3.Oracle Server系統進程與內存結構
當在計算機伺服器上啟動Oracle資料庫後,稱伺服器上啟動了一個Oracle實例(Instance)。ORACLE 實例(Instance)是存取和控制資料庫的軟體機制,它包含系統全局區(SGA)和ORACLE進程兩部分。SGA是系統為實例分配的一組共享內存緩沖區,用於存放資料庫實例和控制信息,以實現對資料庫中數據的治理和操作。
❷ 資料庫和數據表的聯系和區別是什麼
聯系:視圖(view)是在基本表之上建立的表,它的結構(即所定義的列)和內容(即所有數據行)都來自基本表,它依據基本表存在而存在。一個視圖可以對應一個基本表,也可以對應多個基本表。視圖是基本表的抽象和在邏輯意義上建立的新關系
區別:1、視圖是已經編譯好的sql語句。而表不是
2、視圖沒有實際的物理記錄。而表有。
3、表是內容,視圖是窗口
4、表只用物理空間而視圖不佔用物理空間,視圖只是邏輯概念的存在,表可以及時四對它進行修改,但視圖只能有創建的語句來修改
5、表是內模式,視圖是外模式
6、視圖是查看數據表的一種方法,可以查詢數據表中某些欄位構成的數據,只是一些SQL語句的集合。從安全的角度說,視圖可以不給用戶接觸數據表,從而不知道表結構。
7、表屬於全局模式中的表,是實表;視圖屬於局部模式的表,是虛表。
8、視圖的建立和刪除隻影響視圖本身,不影響對應的基本表。
❸ sql 里邏輯文件和物理文件各指什麼
物理文件是實際存放數據的文件,就是在磁碟上具體對應的文件。邏輯文件LF是物理文件的一個視圖,按定義的Key鍵值對數據進行了排序。操作方法如下:
1、打開SQLServerManagementStudio並連接到資料庫引擎伺服器。
❹ 資料庫表的物理結構是什麼
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位元組
❺ 資料庫中的表都有哪些 作用有什麼
ws注冊表是幫助Windows控制硬體、軟體、用戶環境和Windows界面的一套數據文件,注冊表包含在Windows目錄下兩個文件system.dat和user.dat里,還有它們的備份system.da0和user.da0。通過Windows目錄下的regedit.exe程序可以存取注冊表資料庫。在以前,在windows的更早版本(在Win95以前),這些功能是靠win.ini,system.ini和其他和應用程序有關聯的.ini文件來實現的.
在windows操作系統家族中,system.ini和win.ini這兩個文件包含了操作系統所有的控制功能和應用程序的信息,system.ini管理計算機硬體而win.ini管理桌面和應用程序。所有驅動、字體、設置和參數會保存在.ini文件中,任何新程序都會被記錄在.ini文件中。這些記錄會在程序代碼中被引用。因為受win.ini和system.ini文件大小的限制,程序員添加輔助的.INI文件以用來控制更多的應用程序。舉例來說,微軟的Excel有一個excel.ini文件,它包含著選項、設置、預設參數和其他關繫到Excel運行正常的信息。在system.ini和win.ini中只需要指出excel.ini的路徑和文件名即可。
早在Dos和Win3.x的時代,大部分的應用程序都是採用了 ini 文件(初始化文件)來保存一些配置信息,如設置路徑,環境變數等。system.ini和win.ini控制著所有windows和應用程序的特徵和存取方法,它在少數的用戶和少數應用程序的環境中工作的很好。隨著應用程序的數量和復雜性越來越大,則需要在.ini文件中添加更多的參數項。這樣下來,在一個變化的環境中,在應用程序安裝到系統中後,每個人都會更改.ini文件。然而,沒有一個人在刪除應用程序後刪除.ini文件中的相關設置,所以system.ini和win.ini這個兩個文件會變的越來越大。每增加的內容會導致系統性能越來越慢。而且每次應用程序的升級都出現這樣的難題:升級會增加更多的參數項但是從來不去掉舊的設置。而且還有一個明顯的問題,一個.ini文件的最大尺寸是64KB。為了解決這個問題,軟體商自己開始支持自己的.ini文件,然後指向特定的ini文件如win.ini和system.ini文件。這樣下來多個.ini文件影響了系統正常的存取級別設置。如果一個應用程序的.ini文件和WIN.INI文件設置起沖突,究竟是誰的優先順序更高呢?
注冊表最初被設計為一個應用程序的數據文件相關參考文件,最後擴展成對於32位操作系統和應用程序包括了所有功能下的東東。注冊表是一套控制操作系統外表和如何響應外來事件工作的文件。這些「事件」的范圍從直接存取一個硬體設備到介面如何響應特定用戶到應用程序如何運行等等。注冊表因為它的目的和性質變的很復雜,它被設計為專門為32位應用程序工作,文件的大小被限制在大約40MB。利用一個功能強大的注冊表資料庫來統一集中地管理系統硬體設施,軟體配置等信息,從而方便了管理,增強了系統的穩定性。最直觀的一個實例就是,為什麼windows下的不同用戶可以擁有各自的個性化設置,如不同的牆紙,不同的桌面。這就是通過注冊表來實現的。
由此可見,注冊表(Registry)是Windows9x/Me/NT/2000操作系統、硬體設備以及客戶應用程序得以正常運行和保存設置的核心「資料庫」;是一個巨大的樹狀分層的資料庫。它記錄了用戶安裝在機器上的軟體和每個程序的相互關聯關系;它包含了計算機的硬體配置,包括自動配置的即插即用的設備和已有的各種設備說明、狀態屬性以及各種狀態信息和數據等。
二、注冊表都做些什麼?
注冊表是為Windows NT和Windows95中所有32位硬體/驅動和32位應用程序設計的數據文件。16位驅動在Windows NT下無法工作,所以所有設備都通過注冊表來控制,一般這些是通過BIOS來控制的。在Win9x下,16位驅動會繼續以實模式方式設備工作,它們使用system.ini來控制。16位應用程序會工作在NT或者Win9x 下,它們的程序仍然會參考win.ini和system.ini文件獲得信息和控制。
在沒有注冊表的情況下,操作系統不會獲得必須的信息來運行和控制附屬的設備和應用程序及正確響應用戶的輸入。
在系統中注冊表是一個記錄32位驅動的設置和位置的資料庫。當操作系統需要存取硬體設備,它使用驅動程序,甚至設備是一個BIOS支持的設備。無BIOS支持的設備安裝時必須需要驅動,這個驅動是獨立於操作系統的,但是操作系統需要知道從哪裡找到它們,文件名、版本號、其他設置和信息,沒有注冊表對設備的記錄,它們就不能被使用。
當一個用戶准備運行一個應用程序,注冊表提供應用程序信息給操作系統,這樣應用程序可以被找到,正確數據文件的位置被規定,其他設置也都可以被使用。
注冊表保存關於預設數據和輔助文件的位置信息、菜單、按鈕條、窗口狀態和其他可選項。它同樣也保存了安裝信息(比如說日期),安裝軟體的用戶,軟體版本號和日期,序列號等。根據安裝軟體的不同,它包括的信息也不同。
然而,一般來說,注冊表控制所有32位應用程序和驅動,控制的方法是基於用戶和計算機的,而不依賴於應用程序或驅動,每個注冊表的參數項控制了一個用戶的功能或者計算機功能。用戶功能可能包括了桌面外觀和用戶目錄。所以,計算機功能和安裝的硬體和軟體有關,對所以用戶來說項都是公用的。
有些程序功能對用戶有影響,有些時作用於計算機而不是為個人設置的,同樣的,驅動可能是用戶指定的,但在很多時候,它們在計算機中是通用的。
注冊表控制用戶模式的例子有:
★控制面板功能;
★桌面外觀和圖標;
★網路參數;
★瀏覽器功能性和特徵。
這些功能中的某些是和用戶無關的,有些是針對用戶的。
計算機相關控制項基於計算機名,和登陸用戶無關。控制類型的例子是安裝一個應用程序,不管是哪個用戶,程序的可用性和存取是不變的,然而,運行程序圖標依賴於網路上登陸的用戶。網路協議可用性和優先權基於計算機,但是當前連接和用戶信息相關。
這里是在注冊表中基與計算機控制條目的一些例子:
★存取控制;
★登陸確認;
★文件和列印機共享;
★網卡設置和協議;
★系統性能和虛擬內存設置。
沒有了注冊表,Win9x和Windows NT 就不太可能存在。它們實在太復雜了,以致於用過去的.ini文件無法控制,它們的擴展能力需要幾乎無限制的安裝和使用應用程序,注冊表實現了它。然而,注冊表比.ini文件更復雜,理解它如何工作,它做什麼和如何用它來做是有效管理系統的關鍵。
在系統中注冊表控制所有32位應用程序和它們的功能及多個應用程序的交互,比如復制和粘貼,它也控制所有的硬體和驅動程序。雖然多數可以通過控制面板來安裝和設置,理解注冊表仍是做Windows NT和Win9x系統管理基本常識。
概括起來,注冊表中存放著各種參數,直接控制著 Windows 的啟動、硬體驅動程序的裝載以及一些 Windows 應用程序的運行,從而在整個系統中起著核心作用。它包括:
(1)軟、硬體的有關配置和狀態信息,注冊表中保存有應用程序和資源管理器外殼的初始條件、首選項和卸載數據。
(2)聯網計算機的整個系統的設置和各種許可,文件擴展名與應用程序的關聯,硬體部件的描述、狀態和屬性。
(3)性能記錄和其它底層的系統狀態信息,以及其它數據。
如果注冊表受到了破壞,輕者使 Windows 的啟動過程出現異常,重者可能會導致整個系統的完全癱瘓。因此正確地認識、使用,特別是及時備份以及有問題時恢復注冊表,對Windows用戶來說就顯得非常重要。學會了注冊表的知識以及相關應用,便能使你的電腦操作更加得心應手!從而成為一位名副其實的電腦高手!
三、與注冊表有關的術語:
①、注冊表:是一個樹狀分層的資料庫(如圖1)。從物理上講,它是System.dat和User.dat兩個文件;從邏輯上講,它是用戶在注冊表編輯器中看到的配置數據。
②、HKEY :「根鍵」或「主鍵」,它的圖標與資源管理器中文件夾的圖標有點兒相像。Windows98將注冊表分為六個部分,並稱之為 HKEY_name,它意味著某一鍵的句柄。(圖2)
③、key(鍵):它包含了附加的文件夾和一個或多個值。
④、subkey(子鍵):在某一個鍵(父鍵)下面出現的鍵(子鍵)。
⑤、branch(分支):代表一個特定的子鍵及其所包含的一切。一個分支可以從每個注冊表的頂端開始,但通常用以說明一個鍵和其所有內容。
⑥、value entry(值項):帶有一個名稱和一個值的有序值。每個鍵都可包含任何數量的值項。每個值項均由三部分組成:名稱,數據類型,數據。(如圖3)
★ 名稱:不包括反斜杠的字元、數字、代表符、空格的任意組合。同一鍵中不可有相同的名稱。
★ 數據類型:包括字元串、二進制、雙字三種。
字元串(REG_SZ):顧名思義,一串ASCII碼字元。如「Hello World」,是一串文字或片語。在注冊表中,字元串值一般用來表示文件的描述、硬體的標識等。通常它由字母和數字組成。注冊表總是在引號內顯示字元串。
二進制(REG_BINARY):如 F03D990000BC ,是沒有長度限制的二進制數值,在注冊表編輯器中,二進制數據以十六進制的方式顯示出來。
雙 字(REG_DWORD):從字面上理解應該是Double Word ,雙位元組值。由1-8個十六進制數據組成,我們可用以十六進制或十進制的方式來編輯。如 D1234567 。
★ 數據: 值項的具體值,它可以佔用到64KB。
⑦、 Default(預設值):每一個鍵至少包括一個值項,稱為預設值(Default),它總是一個字串。
四、注冊表的內部組織結構及相互關系
計算機配置和預設用戶設置的注冊表數據在Windows NT中被保存在下面這五個文件中:DEFAULT,SAM,SECURITY,SOFTWARE,SYSTEM,NTUSER.DAT。而 Windows9x/Me/2000將所有注冊表文件存入2個文件中:System.dat和User.dat。它們是二進制文件,不能用文本編輯器查看。它們存在於Windows目錄下,具有隱含、系統、只讀屬性。 System.dat包含了計算機特定的配置數據,User.dat包含了用戶特定的數據。User.dat文件的位置在以某個用戶名登錄時,其位於C:\Windows\profiles\用戶名目錄下,系統同時在C:\Windows目錄下保留了一個預設的User.dat文件,以備新用戶使用。內部組織結構是一個類似於目錄管理的樹狀分層的結構(如圖1)。
WINDOWS的注冊表有六大根鍵,相當於一個硬碟被分成了六個分區。
在「運行」對話框中輸入RegEdit,然後單擊「確定」按鈕,則可以運行注冊表編輯器。
圖1左窗格顯示的是注冊表的根鍵,這樣的根鍵共六個。這些根鍵都是大寫的,並以HKEY_為前綴,這種命令約定是以Win32 API的Registry函數的關鍵字的符號變數為基礎的。
雖然在注冊表中,六個根鍵看上去處於一種並列的地位,彼此毫無關系。但事實上,HKEY_CLASSES_ROOT和HKEY_CURRENT_CONFIG中存放的信息都是HKEY_LOCAL_MACHINE中存放的信息的一部分,而HKEY_CURRENT_USER中存放的信息只是HKEY_USERS存放的信息的一部分。HKEY_LOCAL_MACHINE包括HKEY_CLASSES_ROOT和HKEY_CURRENT_USER中所有的信息。在每次系統啟動後,系統就映射出HKEY_CURRENT_USER中的信息,使得用戶可以查看和編輯其中的信息。
實際上,HKEY_LOCAL_MACHINE\SOFTWARE\Classes就是HKEY_CLASSES_ROOT,為了用戶便於查看和編輯,系統專門把它作為一個根鍵。同理,HKEY_CURRENT_CONFIG\SY-STEM\Current Control就是HKEY_LOCAL_MACHINE\SYSTEM\Current Control。
HKEY_USERS中保存了默認用戶和當前登錄用戶的用戶信息。HKEY_CURRENT_USER中保存了當前登錄用戶的用戶信息。
HKEY_DYN_DATA保存了系統運行時的動態數據,它反映出系統的當前狀態,在每次運行時都是不一樣的,即便是在同一台機器上。
根據上面的分析,注冊表中的信息可以分為HKEY_LOCAL_MACHINE和HKEY_USERS兩大類,這兩大類的詳細內容請看後面的介紹。
五、六大根鍵的作用
注冊表採用「關鍵字」及其「鍵值」來描述登錄項及其數據。所有的關鍵字都是以「HKEY」作為前綴開頭。打個比喻來說,關鍵字更象Windows9X下的瀏覽器里的目錄下的文件,每個文件都會有自己特有的內容和屬性。我們可以在注冊表編輯器下很方便地添加、修改、查詢和刪除注冊表的每一個關鍵字。關鍵字可以分為兩類:一類是由系統定義,一般叫做「預定義關鍵字」;另一類是由應用程序定義的,根據應用軟體的不同,登錄項也就不同。在注冊表中,所有的數據都是通過一種樹狀結構以鍵和子鍵的方式組織起來,十分類似於目錄結構。每個鍵都包含了一組特定的信息,每個鍵的鍵名都是 和它所包含的信息相關的。如果這個鍵包含子鍵,則在注冊表編輯器窗口中代表這個鍵的文件夾的左邊將有「+」符號,以表示在這個文件夾中有更多的內容。如果這個文件夾被用戶打開了,那麼這個「+」就會變成「-」。 下面我們對系統預定義的六大根鍵簡單地介紹一下。
1.HKEY_USERS
該根鍵保存了存放在本地計算機口令列表中的用戶標識和密碼列表,即用戶設置。每個用戶的預配置信息都存儲在HKEY_USERS根鍵中。HKEY_USERS是遠程計算機中訪問的根鍵之一。其內容取決於計算機是否激活了用戶配置文件,若未激活用戶配置文件,則可以看到稱為.DEFAULT的單一子鍵,該子鍵包括和所有用戶相關的各種設置,並且和\Windows下的USER.DAT文件相配合。若激活了用戶配置文件並且正確地執行了登錄,則還有一個「用戶名」的子鍵,該用戶名為用戶登錄的名稱。
2.HKEY_CURRENT_USER
該根鍵包含本地工作站中存放的當前登錄的用戶信息,包括用戶登錄用戶名和暫存的密碼(註:此密碼在輸入時是隱藏的)。用戶登錄Windows 98時,其信息從HKEY_USERS中相應的項拷貝到HKEY_CURRENT_USER中。HKEY_CURRENT_USER下面有7個子關鍵字。其中除RemoteAccess」外,其餘6個都為系統預定義。
AppEvents 這個子鍵里登記已注冊的各種應用事件。
ControlPanel 它裡面涉及到控制面板設置有關的內容。
InstallLocationsMRU windows安裝路徑的有關信息。
Keyboardlayout 關於鍵盤設置的信息。
Network 有關網路設置的信息。
RemoteAccess 安裝IE 時建立的子關鍵字,包含該應用程序的有關信息。
Software 軟體的有關信息。
3.HKEY_CURRENT_CONFIG
該根鍵存放著定義當前用戶桌面配置(如顯示器等)的數據,最後使用的文檔列表(MRU)和其他有關當前用戶的Windows 98中文版的安裝的信息。
4.HKEY_CLASSES_ROOT
該鍵由多個子鍵組成,具體可分為兩種:一種是已經注冊的各類文件的擴展名,另一種是各種文件類型的有關信息。左欄中的子鍵就是各種已經注冊的文件擴展名。 注冊表內己經登記的文件擴展名中,有系統默認和應用程序自定義的擴展名。應用程序只有把自定義的擴展名在注冊表中登記,系統才能識別和關聯使用有關的文檔,但只有經過注冊的擴展名,系統才能自動關聯。根據在Windows 98中文版中安裝的應用程序的擴展名,該根鍵指明其文件類型的名稱。
在第一次安裝Windows 98中文版時,RTF(Rich Text Format)文件與寫字板(WordPad)聯系起來,但在以後安裝了中文Word 6.0後,雙擊一個RTF文件時,將自動激活Word。存放在SYSTEM.DAT中的HKEY_CLASSES_ROOT,將替代WIN.INI文件中的[Extensions]小節中的設置項,它把應用程序與文件擴展名聯系起來,它也替代了Windows 3.x中的Reg.dat文件中的相似的設置項。
5.HKEY_LOCAL_MACHINE
注冊表的核心,計算機的各種硬體和軟體的配置均存在於此。它包括以下八個部分:Config配置、Driver驅動程序、Enum即插即用、Hardware硬體、Network網路、Security安全、Software軟體、System系統。每部分中又包括許多子鍵。該根鍵存放本地計算機硬體數據,此根鍵下的子關鍵字包括在SYSTEM.DAT中,用來提供HKEY_LOCAL_MACHINE所需的信息,或者在遠程計算機中可訪問的一組鍵中。該根鍵中的許多子鍵與System.ini文件中設置項類似。
6.HKEY_DYN_DATA
該根鍵存放了系統在運行時動態數據,此數據在每次顯示時都是變化的,因此,此根鍵下的信息沒有放在注冊表中。
❻ 資料庫物理模型
資料庫物理模型設計的目標是根據選定的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。
航空物探信息系統建設
航空物探信息系統建設
所以坐標的存儲數據是:
航空物探信息系統建設
航空物探信息系統建設
❼ 什麼是資料庫表
最佳答案
表結構就是定義一個表的欄位、類型、主鍵、外鍵、索引,這些基本的屬性組成了資料庫的表結構
例如:
create table student (
id int primarykey,
name varchar,
sex varchar,
age varchar)
id、name、sex這些就是欄位,int varchar就是數據類型,primarykey為設置主鍵
❽ 資料庫是什麼
資料庫,可視為電子化的文件櫃,即存儲電子文件的處所。
所謂「資料庫」是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗餘度、與應用程序彼此獨立的數據集合。在資料庫中,用戶可以對文件中的數據進行新增、查詢、更新、刪除等操作。
因為使用io流文件存儲數據有很多弊端如文件存儲數據存儲效率低、不管存還取操作都較麻煩、一般只能保存小量字元串數據等。為了解決這些弊端,才有資料庫的出現,使用資料庫存儲數據就可以很好的解決這些弊端。
(8)資料庫物理表是什麼擴展閱讀:
資料庫的結構:
一個資料庫由一個或一組數據表組成。每個資料庫都以文件的形式存放在磁碟上,即對應於一個物理文件。不同的資料庫,與物理文件對應的方式也不一樣。
對於dBASE,FoxPro和Paradox格式的資料庫來說,一個數據表就是一個單獨的資料庫文件,而對於Microsoft Access、Btrieve格式的資料庫來說,一個資料庫文件可以含有多個數據表。
資料庫中的數據是以表為單位進行組織的。一個表是一組相關的按行排列的數據;每個表中都含有相同類型的信息。表實際上是一個二維表格,例如,一個班所有學生的考試成績,可以存放在一個表中,表中的每一行對應一個學生,這一行包括學生的學號,姓名及各門課程成績。
參考資料來源:網路-資料庫
❾ SQL Server資料庫的物理文件有哪些
在microsoft
sql
server
2005中,用於數據存儲的實用工具是資料庫。資料庫的物理表現是操作系統文件,即在物理上,一個資料庫由一個或多個磁碟上的文件組成。這種物理表現只對資料庫管理員是可見的,而對用戶是透明的。邏輯上,一個資料庫由若干個用戶可視的組件構成,如表、視圖、角色等,這些組件稱為資料庫對象。用戶利用這些邏輯資料庫的資料庫對象存儲或讀取資料庫中的數據,也直接或間接地利用這些對象在不同應用程序中完成存儲、操作和檢索等工作。邏輯資料庫的資料庫對象可以從企業管理器中查看.
每個sql
server
2005資料庫(無論是系統資料庫還是用戶資料庫)在物理上都由至少一個數據文件和至少一個日誌文件組成。出於分配和管理目的,可以將資料庫文件分成不同的文件組。
數據文件:分為主要數據文件和次要數據文件兩種形式。每個資料庫都有且只有一個主要數據文件。主要數據文件的默認文件擴展名是.mdf。它將數據存儲在表和索引中,包含資料庫的啟動信息,還包含一些系統表,這些表記載資料庫對象及其他文件的位置信息。次要數據文件包含除主要數據文件外的所有數據文件。有些資料庫可能沒有次要數據文件,而有些資料庫則有多個次要數據文件。次要數據文件的默認文件擴展名是.ndf。
日誌文件:sql
server具有事務功能,以保證資料庫操作的一致性和完整性。所謂事務就是一個單元的工作,該單元的工作要麼全部完成,要麼全部不完成。日誌文件用來記錄資料庫中已發生的所有修改和執行每次修改的事務。sql
server是遵守先寫日誌再執行資料庫修改的資料庫系統,因此如果出現資料庫系統崩潰,資料庫管理員(dba)可以通過日誌文件完成資料庫的修復與重建。每個資料庫必須至少有一個日誌文件,但可以
不止一個。日誌文件的默認文件擴展名是.1df。建立資料庫時,sqi。server會自動建立資料庫的日誌文件。
文件組:一些系統可以通過控制在特定磁碟驅動器上放置的數據和索引來提高自身的性能。文件組可以對此進程提供幫助。系統管理員可以為每個磁碟驅動器創建文件組,然後將特定的表、索引、或表中的text、ntext或image數據指派給特定的文件組。
sqi.server有兩種類型的文件組:主文件組和用戶定義文件組。主文件組包含主要數據文件和任何沒有明確指派給其他文件組的文件,系統表的所有頁均分配在主文件組中;用戶定義文件組是在cr
e_ate
data_base或ai,ter
data.base語句中,使用fii,egroup關鍵字指定的文件組。sqt.server
2005在沒有文件組時也能有效地工作,因此許多系統不需要指定用戶定義文件組。在這種情況下,所有文件都包含在主文件組中,而且sqi。server
2005可以在資料庫內的任何位置分配數據。
每個資料庫中都有一個文件組作為默認文件組運行。當sqi。server給創建時沒有為其指定文件組的表或索引分配頁時,將從默認文件組中進行分配。一次只能有一個文件組作為默認文件組。如果沒有指定默認的文件組,主文件組則成為默認的文件組。
❿ 資料庫與數據表的區別是什麼
資料庫是數據表的集合
數據表
是數據的集合
資料庫可能比數據表大也可能比數據表小
但是一般資料庫都是大於或者等於數據表的
所有相關的數據表組成一個資料庫
但是數據表又是唯一的
這個資料庫的數據表跟另一資料庫的數據表是不相同的