?? 9.txt
字號:
發信人: soullion (river), 信區: DataMining
標 題: 中醫藥數據庫
發信站: 南京大學小百合站 (Fri Mar 1 14:01:35 2002)
備課資料
1 數據庫(database)基本概念
數據通常指用符號紀錄下來的可以鑒別的信息。數據的概念包括兩個方面:其一,數據內
容是事物特性的反映或描述;其二,數據是符號的集合。例如:桂枝性溫味甘。數據的概
念在數據處理領域中已經大大地拓寬了。所謂的符號,不僅僅指數字、字母、文字和其它
特殊字符,而且還包括圖形、圖象、聲音等多媒體數據,所謂“記錄”下來也不僅是指印
在紙上,而且包括記錄在磁介質、光介質、半導體存儲器里。數據在空間上的傳遞稱為“
通信”,在時間上的傳遞稱為“存儲”。
信息是關于現實世界事物的存在方式或運動形態反映的綜合,是人們進行各種活動所需要
的知識。同一個數據也可能有不同的解釋(反映不同的信息),由此,信息是人們消化理
解了的數據。信息是抽象的(行上學的),不隨數據設備所決定的數據形式而改變(而數
據的表示方式卻具有可選擇性)。用不同的數據形式可以表示同樣的信息。
數據與信息既有聯系又有區別。數據是載荷信息的物理符號或稱載體,數據能表示信息,
但并非任何數據都能表示信息。數據與信息有時可以混用,例如,數據處理也稱為信息處
理;有時必須分清,例如,不能把信息系統稱為數據系統。數據與信息的關系如下:信息
=數據+處理
數據庫技術是管理數據的一種最新方法,它研究如何組織和存儲數據,如何高效地獲取和
處理數據。數據庫技術已經成為計算機領域中最重要的技術之一,是軟件學科的一個獨立
分支。數據庫系統已經成為當代計算機系統的重要組成部分。
數據庫技術在60年代末出現,主要用來適應管理信息系統對數據管理的要求。30年來,數
據庫技術在理論上和實現技術上都得到很大發展,開發出很多實用的數據庫系統,數據庫
技術得到廣泛的應用。在計算機的三大主要應用領域(科學計算、數據處理、過程控制)
中,數據處理約占70%左右的比重。
數據管理是指對數據的組織、編碼、分類、存儲、檢索和維護,它是數據處理的中心問題
。
數據處理是將數據轉換成信息的過程。它包括對各種形式的數據進行收集、存儲、加工、
傳播等一系列活動的總和,其目的是從大量的、原始的數據中,根據事物之間的固有聯系
和運動規律,通過分析、歸納、演繹推導等方法,抽取、導出有價值、有意義的信息,以
此作為行為和決策的依據。數據處理可以有簡單加工:組織、編碼、分類、排序等;復雜
加工:用統計學方法、數學模型等對數據進行深層次的加工。
信息系統是提供信息,輔助人們對環境進行控制和進行決策的系統。數據庫是信息系
統的核心和基礎。數據庫技術將數據庫中大量的數據按一定的模型組織起來,提供存儲、
維護、檢索數據的功能,使信息系統可方便地、及時地、準確地從數據庫中獲得所需的信
息。一個信息系統的各個部分能否緊密地結合在一起以及如何結合,關鍵在于數據庫。
2 數據管理方法的發展
數據管理方法的發展可劃分為三個階段:人工管理階段、文件系統階段和數據庫系統
階段。此種劃分的依據主要是數據管理的特點。
2.1 人工管理階段(至50年代中期)
該階段的計算機系統還沒有支持管理數據的軟件,主要應用于科學計算。在程序中不僅規
定數據的邏輯結構,而且還要設計物理結構(包括存儲結構、存取方法)。當數據的物理
組織或存儲設備改變時,應用程序必須重新編制。這個時期數據管理的特點是:
數據與程序不具有獨立性
數據不長期保存
數據的組織是面向應用的,應用程序之間無法共享數據資源,存在大量的重復數據,
系統中沒有對數據進行管理的軟件
維護應用程序之間數據的一致性很困難。
應用程序1-------數據集1
應用程序2-------數據集2
應用程序n-------數據集n
人工管理數據與程序的關系
2.2 文件系統階段(50年代中期到60年代中期)
該階段的計算機系統由統一的軟件管理數據的存取,該軟件稱之為文件系統或存取方法。
其特點為程序和數據是分離的,數據可以長期保存在外存上,以多種文件形式(如順序文
件、索引文件、隨機文件等)組織。數據的邏輯結構(指呈現在用戶面前的數據結構)與
數據的物理結構(指數據在物理設備上的結構)之間可以有一定的差別,由存取方法實現
數據的邏輯結構與物理結構之間的轉化,使程序與數據具有一定獨立性。實現了以文件為
單位的數據共享,但未能實現以記錄或數據項為單位的數據共享,數據的邏輯組織還是面
向應用的,所以在應用之間還存在大量冗余數據(不必要的重復存儲)。
問題:
數據冗余度大
同一數據重復出現在多個文件中
2、缺乏數據獨立性
數據和程序相互依賴,如果改變數據的邏輯結構,或文件的組織格式,必須修改相應
的應用程序。
3、數據無集中管理
文件是無彈性、無結構的數據集合。所謂無彈性是指文件內部結構是由程序自己定義
,而不由系統統一管理,因此限制了數據文件的應用擴充、移植等需求,也難以增刪數據
項;所謂無結構是指各個數據文件之間是獨立的,缺乏聯系,不能反映現實世界事物之間
的聯系。
應用程序1 ------- 物理文件1
應用程序2 ------- 物理文件2
應用程序n ------ 物理文件n
文件系統數據與程序的關系
2.3 數據庫系統階段(60年代后期至70年代后期)
該階段的計算機系統廣泛地應用于企業管理,要求提供更高的數據共享能力,程序和數據
具有更高的獨立性。數據庫系統是在操作系統的文件系統基礎上發展起來的。是具有管理
數據庫功能的計算機系統。它將一個單位或一個部門所需的數據綜合地組織在一起,構成
數據庫。由數據庫管理系統(DBMS:Data Base Management Sybase)軟件實現對數據庫的
定義、操作和管理。數據庫系統的主要特點是:
實現數據共享,減少數據冗余
數據完全從程序中分離,由數據庫管理系統來統一管理。數據的最小訪問單位是數據
項(字段)。
2、采用特定的數據模型
整個組織的數據不是一盤散沙,必須表示出數據之間所存在的有機聯系,才能反映現
實世界事物之間的聯系。也就是說數據是有結構的,這種結構由數據模型表示出來。
例如《備急千金要方》+ 消渴 + 黃連,非常容易地被聯機查到。
3、具有較高的數據獨立性
數據庫系統中,DBMS提供映象的功能,確保應用程序對數據結構和存取方法有較高的
獨立性。數據的物理存儲結構與用戶看到的邏輯結構可以有很大差別。
4、有統一的數據控制功能
數據庫作為多個用戶和應用程序的共享資源,對數據的存取往往是并發的,即多個用
戶同時使用同一個數據庫。數據庫管理系統必須提供并發控制功能、數據的安全性控制功
能和數據的完整性控制功能。
應用程序1
應用程序2 數據庫管理系統 數據庫
應用程序n
數據庫系統數據與程序的關系
2.4 分布式數據庫系統階段(80年代初期到現在)
數據庫系統按數據分布情況可分為集中式和分布式數據庫系統。集中式數據庫系統將其數
據庫集中存放在一臺計算機上,而分布式數據庫系統支持分布式數據庫。分布式數據庫是
由一組數據組成,這組數據可分布在由計算機網絡連接在一起的不同計算機上,網絡上的
每一個結點具有獨立處理的能力(稱為場地自治性),可以執行局部應用,同時每個結點
也可以通過網絡執行全局應用。對于數據庫的用戶來說,一個分布式數據庫系統在邏輯上
看如同一個集中式數據庫系統,用戶可以在任何一個場地執行全局應用。
分布式數據庫系統是數據庫技術和計算機網絡技術結合的產物,其是一個邏輯上統一
、地域上分布的數據集合。其特點如下:
1、局部自主
網絡上每個節點的數據庫系統都具有獨立處理本地事務的能力,而且各局部結點之間
也能夠互相訪問、有效地配合處理更復雜的事務。我們在ORACLE 8i上實現了這樣的操作,
在局域網中,大家可以在不同計算機終端,操作同一個數據庫;9個數據庫系統,在每一臺
計算機上都可以訪問到。
2、可靠性和可用性
分布式系統比集中式系統有更高的可靠性,一個局部系統發生故障不至導致整個系統停頓
或破壞,只要一個結點上的數據備份可用,則數據是可用的。可見支持一定程度的數據冗
余是充分發揮分布式數據庫系統優點的先決條件之一。
3、效率和靈活性
分布式系統分散了工作負荷,緩解了單機容量的壓力。數據可以存儲在臨近的常用結點,
如果本結點的數據子集包含了要查詢的全部內容,顯然比集中式數據庫在全集上查詢要節
省時間。同時系統易于實現擴展。例如,一個數據庫要增加新的數據項,分布式數據庫系
統能夠在對現有系統影響較小的情況下實現擴充。由此,擴大系統規模比集中式系統更加
方便、經濟、靈活。
3 數據庫系統的結構
3.1 數據庫系統的組成
最終用戶
專業用戶
DBA
數據庫系統層次示意圖
1、硬件系統
足夠大的內存(1G),足夠大的硬盤(36G),特殊通道能力,軟盤、磁帶等。
2、數據庫集合
若干個設計合理、滿足應用需要的數據庫。
3、系統軟件
支持數據庫管理系統運作的操作系統;數據庫管理系統;開發應用系統(程序語言、工具
軟件)。
4、數據庫管理員
對于較大規模的數據庫系統必須有人全面負責建立、維護和管理數據庫系統。承擔此
任務的人稱作數據庫管理員DBA(Database Administrator)。
5、用戶
數據庫用戶分為2類:一類是最終用戶通過數據庫系統提供的界面來使用數據庫。這些
界面包括菜單、表格、圖形和報表;另一類是專業用戶,即程序員和數據維護人員。
3.2 數據庫系統結構
1972年美國ANSI的一個研究組開始研究數據庫結構的標準,于1978年提出了三級模式
的數據庫系統結構。
數據庫系統的體系結構,是數據庫系統的一個總的框架。盡管實際的數據庫系統的軟
件產品多種多樣,支持不同的數據模型,使用不同的數據庫語言,建立在不同的OS之上,
數據的存儲結構也各不相同,但絕大多數數據庫系統在總的體系結構上都具有三級模式結
構的結構特征。
數據庫系統的三級模式結構是:概念模式、外模式和內模式。
概念模式,又稱邏輯模式,是數據庫中全體數據的邏輯結構和特征的描述,是所有用
戶的公共數據視圖。
內模式,又稱存儲模式,是數據在數據庫系統內部的表示,即為數據的物理結構和存
儲方式的描述。
外模式,又稱子模式或用戶模式,是數據庫用戶看到的數據庫的數據視圖。
數據庫系統的三級模式是數據庫的三個抽象層次的聯系和轉換,數據庫系統在三級模
式中提供兩個映象:外模式/概念模式映象和概念模式/內模式映象。
數據庫系統提供模式描述語言(模式DDL)來嚴格地表示模式所包含的內容。用模式DDL寫
出的一個數據庫邏輯定義的全部語句,稱為數據庫的模式。模式是對數據庫結構的一種描
述,它是裝配數據庫的一個框架。
如下圖所示:
外模式 / 模式映象
模式 / 內模式映象
圖1 數據庫系統結構圖
4 數據庫管理系統的主要功能
數據庫管理系統的功能是在上面所描述的結構前提下實現的。在數據庫中,數據是多
個用戶和應用程序的共享資源,已經從應用程序中完全獨立出來,由數據庫管理系統來統
一管理。數據庫管理系統應該提供以下幾個方面的功能。
1、數據庫的定義功能
提供數據定義語言DDL(Data Description Language),或者操作命令,以便對各級
數據模式進行精確的描述。由此,系統必須包含DDL的編譯或解釋程序。用DDL所作的定義
將被系統保留在數據字典中,以便在進行數據操作和控制時使用。專業用戶可以查閱數據
定義以便共享數據庫中的數據。
2、數據操作功能
為了對數據庫中的數據進行追加、插入、修改、刪除、檢索、集合等操作,DBMS提供
語言或者命令,稱作數據操作語言DML(Data Manipulation Language)。不同的DBMS語言
的語法格式也不相同,以其實現方法而言,可以分為兩類:一類可以獨立交互式使用,不
依賴于任何程序設計語言,稱為自含型或自主型語言;另一類是宿主型,嵌入到宿主語言
中使用。如嵌入FORTRAN、C等程序語言中。在使用高級語言編寫的應用程序中,則要用宿
主型DML語句來操縱數據,因此DBMS必須包含DML的編譯或解釋程序。
3、數據庫運行控制功能
數據庫中的數據是提供給多個用戶共享的,用戶對數據的存取可能是并發的,DBMS必
須提供以下三個方面的數據控制功能
* 并發控制功能:對多用戶并發操作加以控制、協調。
* 數據的安全性控制
數據安全性是控制是對數據庫采用的一種保護措施,防止非授權用戶存取造成數據泄
密或破壞。
* 數據完整性是數據的準確性和一致性的測度。系統應采取一定的措施確保數據有效
、與數據庫的定義一致。但這種控制是有限的。
4、數據字典
數據字典DD(Data Dictionary)中存放著對實際數據庫各級模式所作的定義,即對數
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -