Oracle學習筆記二——DBMS

來源:互聯網
上載者:User

標籤:style   http   io   os   使用   檔案   資料   div   sp   

資料庫管理系統 

資料庫管理系統(Database Management System,DBMS),有時也被稱為資料庫管理員(Database Manager)


什麼是資料庫管理系統

  資料庫管理系統(Database Management System,DBMS)是一種操縱和管理資料庫的大型軟體,是用於建立、使用和維護資料庫。它對資料庫進行統一的管理和控制,以保證資料庫的安全性和完整性。使用者通過dbms訪問資料庫中的資料,資料庫管理員也通過dbms進行資料庫的維護工作。它提供多種功能,可使多個應用程式和使用者用不同的方法在同時或不同時刻去建立,修改和詢問資料庫。它使使用者能方便地定義和操縱資料,維護資料的安全性和完整性,以及進行多使用者下的並發控制和恢複資料庫。

 資料庫管理系統組成部分

  按功能劃分,資料庫管理系統大致可分為6個部分:

  (1)模式翻譯:提供資料定義語言 (Data Definition Language)(ddl)。用它書寫的資料庫模式被翻譯為內部表示。資料庫的邏輯結構、完整性條件約束和物理儲存結構儲存在內部的資料字典中。資料庫的各種資料操作(如尋找、修改、插入和刪除等)和資料庫的維護管理都是以資料庫模式為依據的。

  (2)應用程式的編譯:把包含著訪問資料庫語句的應用程式,編譯成在dbms支援下可啟動並執行目標程式。

  (3)互動式查詢:提供易使用的互動式查詢語言,如sql。dbms負責執行查詢命令,並將查詢結果顯示在螢幕上。

  (4)資料的組織與存取:提供資料在外圍儲存裝置上的物理組織與存取方法。

  ⑸事務運行管理:提供事務運行管理及作業記錄,事務啟動並執行安全性監控和資料完整性檢查,事務的並發控制及系統復原等功能。

  (6)資料庫的維護:為資料庫管理員提供軟體支援,包括資料安全控制、完整性保障、Database Backup、資料庫重組以及效能監控等維護工具。

  基於關聯式模式的資料庫管理系統已日臻完善,並已作為商品化軟體廣泛應用於各行各業。它在各戶伺服器結構的分布式多使用者環境中的應用,使資料庫系統的應用進一步擴充。隨著新型資料模型及資料管理的實現技術的推進,可以預期dbms軟體的效能還將更新和完善,應用領域也將進一步地拓寬。

  它所提供的功能有以下幾項:

  (1)資料定義功能。DBMS提供相應資料語言來定義(DDL)資料庫結構,它們是刻畫資料庫架構,並被儲存在資料字典中。

  (2)資料存取功能。DBMS提供資料操縱語言(DML),實現對資料庫資料的基本存取操作:檢索,插入,修改和刪除。

  (3)資料庫運行管理功能。DBMS提供資料控制功能,即是資料的安全性、完整性和並發控制等對資料庫運行進行有效地控制和管理,以確保資料正確有效。

  (4)資料庫的建立和維護功能。包括資料庫初始資料的裝入,資料庫的轉儲、恢複、重組織,系統效能監控、分析等功能。

  (5)資料庫的傳輸。DBMS提供處理資料的傳輸,實現使用者程式與DBMS之間的通訊,通常與作業系統協調完成。

資料庫管理系統的階層

  根據處理對象的不同,資料庫管理系統的階層由進階到低級依次為應用程式層、語言翻譯處理層、資料存取層、資料存放區層、作業系統。

  (1)應用程式層。應用程式層是DBMS與終端使用者和應用程式的介面層,處理的對象是各種各樣的資料庫應用。

  (2)語言翻譯處理層。語言翻譯處理層是對資料庫語言的各類語句進行文法分析、視圖轉換、授權檢查、完整性檢查等。

  (3)資料存取層。資料存取層處理的對象是單個元組,它將上層的集合操作轉換為單記錄操作。

  (4)資料存放區層。資料存放區層處理的對象是資料頁和系統緩衝區。

  (5)作業系統。作業系統是DBMS的基礎。作業系統提供的存取原語和基本的存取方法通常是作為和DBMS儲存層的介面。

資料庫管理系統的功能和特徵

  資料管理技術的發展大致經曆了人工管理階段(20世紀50年代中期前)、檔案系統階段(20世紀50年代後期到60年代中期)、資料庫階段(20世紀60年代末到70年代末)和進階資料庫技術階段(20世紀80年代初開始)。

  資料庫是長期儲存在電腦內的、有組織的、可共用的資料的集合。

  資料庫管理系統(DBMS)是一種負責資料庫的定義、建立、操作、管理和維護的軟體系統。其目的是保證資料安全可靠,提高資料庫應用的簡明性和方便性。DBMS的工作機理是把使用者對資料的操作轉化為對系統隱藏檔的操作,有效地實現資料庫3級之間的轉化。資料庫管理系統的主要職能有資料庫的定義和建立、資料庫的操作、資料庫的控制、資料庫的維護、故障恢複和資料通訊。

  資料庫系統(DBS)是實現有組織地、動態地儲存大量關聯資料方便多使用者訪問的電腦軟體、硬體和資料資源群組成的系統。一個典型的資料庫系統包括資料庫、硬體、軟體(應用程式)和資料庫管理員(DBA)4個部分。根據電腦的系統結構,DBS可分成集中式、客戶/伺服器式、並行式和分布式4種。

  與檔案系統階段相比,資料庫技術的資料管理方式具有以下特點。

  (1)採用複雜的資料模型表示資料結構,資料冗餘小,易擴充,實現了資料共用。

  (2)具有較高的資料和程式獨立性,資料庫的獨立性有物理獨立性和邏輯獨立性。

  (3)資料庫系統為使用者提供了方便的使用者介面。

  (4)資料庫系統提供4個方面的資料控制功能,分別是並發控制、恢複、完整性和安全性。資料庫中各個應用程式所使用的資料由資料庫系統統一規定,按照一定的資料模型組織和建立,由系統統一管理和集中控制。

  (5)增加了系統的靈活性。

  進階資料庫技術階段的主要標誌是分散式資料庫系統和物件導向資料庫系統的出現。

  集中式系統的弱點是隨著資料量的增加,系統相當龐大、操作複雜、開銷大,而且因為資料集中儲存,大量的通訊都要通過主機,造成擁擠。分散式資料庫系統的主要特點是資料在物理上分散儲存,在邏輯上是統一的。分散式資料庫系統的多數處理就地完成,各地的電腦由資料通訊網路相聯絡。

  物件導向資料庫系統是物件導向的程式設計技術與資料庫技術相結合的產物。物件導向資料庫系統的主要特點是具有物件導向技術的封裝性和繼承性,提高了軟體的可重用性。

  從目前的資料庫系統來看,主要存在以下缺點。

  (1)採用待用資料模型,資料類型和操作簡單、固定,只能處理短壽命事務。

  (2)不能適應電腦輔助設計、電腦輔助軟體工程、影像處理、超文本和多媒體等新的應用。

  資料庫的未來發展趨勢如下:

  (1)分散式資料管理。

  (2)支援物件導向的資料模型。

  (3)體繫結構適應功能擴充,能處理複雜資料類型和長壽命事務,能和以前的資料庫共存。

  (4)資料庫技術與其他學科相結合(分散式資料庫、並行資料庫、多媒體資料庫、Internet資料庫、知識庫、演繹資料庫和主動資料庫)。

資料庫管理系統選擇原則

  選擇資料庫管理系統時應從以下幾個方面予以考慮:

  (1) 構造資料庫的難易程度。

  需要分析資料庫管理系統有沒有範式的要求,即是否必須按照系統所規定的資料模型分析現實世界,建立相應的模型;資料庫管理語句是否符合國際標準,符合國際標準則便於系統的維護、開發、移植;有沒有面向使用者的易用的開發工具;所支援的資料庫容量,資料庫的容量特性決定了資料庫管理系統的使用範圍。

  (2) 程式開發的難易程度。

  有無電腦輔助軟體工程工具CASE——電腦輔助軟體工程工具可以協助開發人員根據軟體工程的方法提供各開發階段的維護、編碼環境,便於複雜軟體的開發、維護。有無第四代語言的開發平台——第四代語言具有非過程語言的設計方法,使用者不需編寫複雜的過程性代碼,易學、易懂、易維護。有無物件導向的設計平台——物件導向的設計思想十分接近人類的邏輯思維方式,便於開發和維護。對多媒體資料類型的支援 ——多媒體資料需求是今後發展的趨勢,支援多媒體資料類型的資料庫管理系統必將減少應用程式的開發和維護工作。

  (3) 資料庫管理系統的效能分析。

  包括效能評估(回應時間、資料單位時間輸送量)、效能監控(內外存使用方式、系統輸入/輸出速率、SQL語句的執行,資料庫元組控制)、效能管理(參數設定與調整)。

  (4) 對分布式應用的支援。

  包括資料透明與網路透明程度。資料透明是指使用者在應用中不需指出資料在網路中的什麼節點上,資料庫管理系統可以自動搜尋網路,提取所需資料;網路透明是指使用者在應用中無需指出網路所採用的協議。資料庫管理系統自動將資料包轉換成相應的協議資料。

  (5) 平行處理能力。

  支援多CPU模式的系統(SMP,CLUSTER,MPP),負載的分配形式,平行處理的顆粒度、範圍。

  (6) 可移植性和可括展性。

  可移植性指垂直擴充和水平擴充能力。垂直擴充要求新平台能夠支援低版本的平台,資料庫客戶機/ 伺服器機制支援集中式管理員模式,這樣保證使用者以前的投資和系統;水平擴充要求滿足硬體上的擴充,支援從單CPU模式轉換成多CPU並行機模式( SMP, CLUSTER, MPP)

  (7) 資料完整性約束。

  資料完整性指資料的正確性和一致性保護,包括實體完整性、參照完整性、複雜的事務規則。

  (8) 並發控制功能。

  對於分散式資料庫管理系統,並發控制功能是必不可少的。因為它面臨的是多任務分布環境,可能會有多個使用者點在同一時刻對同一資料進行讀或寫操作,為了保證資料的一致性,需要由資料庫管理系統的並發控制功能來完成。評價並發控制的標準應從下面幾方面加以考慮:

  保證查詢結果一致性方法

  資料鎖的顆粒度(資料鎖的控制範圍,表、頁、元組等)

  資料鎖的升級管理功能

  死結的檢測和解決方案

  (9) 容錯能力。

  異常情況下對資料的容錯處理。評價標準:硬體的容錯,有無磁碟鏡象處理功能軟體的容錯,有無軟體方法異常情況的容錯功能

  (10) 安全性控制

  包括安全保密的程度(帳戶管理、使用者權限、網路安全控制、資料約束)

  (11) 支援漢文書處理能力

  包括資料庫描述語言的漢文書處理能力(表名、網域名稱、資料)和資料庫開發工具對漢字的支援能力。

  (12)當突然停電、出現硬體故障、軟體失效、病毒或嚴重錯誤操作時,系統應提供恢複資料庫的功能,如定期轉存、恢複備份、復原等,使系統有能力將資料庫恢複到損壞到以前的狀態。

資料庫管理系統的代表

  Oracle

  Oracle是一個最早商品化的關係型資料庫管理系統,也是應用廣泛、功能強大的資料庫管理系統。Oracle作為一個通用的資料庫管理系統,不僅具有完整的資料管理功能,還是一個分散式資料庫系統,支援各種分布式功能,特別是支援 Internet應用。作為一個應用開發環境,Oracle提供了一套介面友好、功能齊全的資料庫開發工具。Oracle使用PL/SQL語言執行各種操作,具有可開放性、可移植性、延展性等功能。特別是在Oracle 8i中,支援物件導向的功能,如支援類、方法、屬性等,使得Oracle 產品成為一種對象/關係型資料庫管理系統。目前最新版本是Oracle 11g。

  PostgreSQL

  PostgreSQL 是一個自由的對象-關聯式資料庫伺服器(資料庫管理系統),它在靈活的 BSD-風格許可證下發行。它在其他開放原始碼資料庫系統(比如 MySQL 和 Firebird),和專有系統比如 Oracle、Sybase、IBM 的 DB2 和 Microsoft SQL Server之外,為使用者又提供了一種選擇。

  Microsoft SQL Server

  Microsoft SQL Server是一種典型的關係型資料庫管理系統。可以在許多作業系統上運行,它使用Transact-SQL語言完成資料操作。由於Microsoft SQL Server是開放式的系統,其它系統可以與它進行完好的互動操作。目前最新版本的產品為Microsoft SQL Server 2008,它具有可靠性、延展性、可用性、可管理性等特點,為使用者提供完整的資料庫解決方案。

  Microsoft Access

  作為Microsoft Office組件之一的Microsoft Access是在Windows環境下非常流行的案頭型資料庫管理系統。使用Microsoft Access無需編寫任何代碼,只需通過直觀的可視化操作就可以完成大部分資料管理任務。在Microsoft Access資料庫中,包括許多組成資料庫的基本要素。這些要素是儲存資訊的表、顯示人機互動介面的表單、有效檢索資料的查詢、資訊輸出載體的報表、提高應用效率的宏、功能強大的模組工具等。它不僅可以通過ODBC與其它資料庫相連,實現資料交換和共用,還可以與Word、Excel等辦公軟體進行資料交換和共用,並且通過對象連結與嵌入技術在資料庫中嵌入和連結聲音、映像等多媒體資料。

 

引用:http://wiki.mbalib.com/wiki/%E6%95%B0%E6%8D%AE%E5%BA%93%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%9F

Oracle學習筆記二——DBMS

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.