Transcript Document

第1章
資料庫與資料庫使用者
1
學習重點
☼ 資料庫類型與資料庫應用
☼ 基本定義
☼ 典型的資料庫管理系統功能
☼ 資料庫範例
☼ 資料庫技術的主要特色
☼ 資料庫的各種使用者
☼ 使用資料庫技術的優點
☼ 使用資料庫技術的間接好處
☼ 資料庫系統的簡史
☼ 擴展資料庫的功能
☼ 何時不必使用資料庫
資料庫管理
2
資料庫類型與資料庫應用
☼數字和文字資料庫
☼多媒體資料庫
☼地理資訊系統 (GIS)
☼資料倉儲
☼即時資料庫和主動資料庫
資料庫管理
3
近年資料庫系統的新應用領域
新應用資料庫
多媒體資料庫(multimedia
database)
地理資料系統(GIS)
說明
儲存圖片、影片和聲音
訊息
儲存和分析地圖、天氣
資料和衛星影像
從大型資料庫擷取和分
析資訊,提供決策之用
資料倉儲(Data warehouse)
和線上分析處理系統
(OLAP)
即時(real-time)資料庫和主 用於控制工業和製造的
動(active)資料庫
程序
資料搜尋技術
資料庫管理
應用於全球資訊網上,
用來改善使用者在網際
網路上的瀏覽效率
4
基本定義
☼ 資料庫:是一組相關資料的集合
☼ 資料:可以被記錄下來且具有隱含意義的事實
(fact)
☼ 迷你世界(Mini-world):真實世界的一部分,
其資料是儲存在資料庫中。
☼ 資料庫管理系統(Database Management
System,DBMS):一種套裝軟體/系統,用
來建立和維護電腦化的資料庫
☼ 資料庫系統:由DBMS軟體和它裡面的資料所組
成。有時候應用程式也包括在內
資料庫管理
5
典型的資料庫管理系統功能 (1/2)
☼常用功能:
♦ 定義資料庫:指定資料的資料型態、結構
與限制
♦ 建構資料庫:將資料儲存到DBMS控制下的
儲存媒體的過程
♦ 處理資料庫:查詢、新增、刪除、修改其
內容,以及產生報表
♦ 共享資料庫:允許多個使用者與程式同時
存取資料庫,同時必須保持所有的資料是
有效而一致的
資料庫管理
6
典型的資料庫管理系統功能 (2/2)
☼其他功能:
♦ 系統保護功能:目的是保護資料不受軟硬
體故障所損壞
♦ 安全保護功能:目的是避免未經授權的存
取動作
♦ 資料的展示與視覺化
資料庫管理
7
簡化的資料庫系統環境圖
資料庫管理
8
資料庫範例 (1/3)
☼此例的迷你世界:大學 (UNIVERSITY)
環境的一部分
☼這個迷你世界的某些實體 (entity):
♦
♦
♦
♦
♦
STUDENT (學生)
COURSE (課程)
SECTION (課程的某一門課)
DEPARTMENT (系所)
INSTRUCTOR (教師)
資料庫管理
9
資料庫範例 (2/3)
表格名稱
表格內容說明
STUDENT
儲存每個學生的基本資料
COURSE
儲存每門課程的基本資料
SECTION
儲存每個學期各課程的資料
GRADE_REPORT
儲存每個學生修完的各課程
成績資料
儲存每個課程的先修課程資
料
PREREQUISITE
資料庫管理
10
資料庫範例 (3/3)
☼ 存在於這個迷你世界的一些關係:
♦
♦
♦
♦
♦
♦
特定COURSE的SECTION
STUDENT選修多個SECTION
有些COURSE有指定的先修COURSE
INSTRUCTOR敎授SECTION
COURSE是由DEPARTMENT提供
STUDENT主修DEPARTMENT
Note:以上這些在實體關聯 (Entity-Relationship,
ER) 資料模型中都可以表達
資料庫管理
11
資料庫技術的主要特色 (1/3)
☼資料庫系統的自我描述本質:DBMS的目
錄 (catalog) 中儲存有資料庫的描述,這些描述
資料稱為中繼資料 (meta-data)。因此DBMS軟
體能與不同的資料庫一起工作
☼隔離程式與資料:這種特性稱為程式與
資料獨立 (program-data independence)。它
使得不需要修改DBMS存取程式,就可
以變更資料儲存結構和運算動作
資料庫管理
12
資料庫技術的主要特色 (2/3)
☼資料抽象化:資料模型 (data model)
是用來隱藏儲存和實作細節,並將資
料庫以概念視界 (conceptual view)
方式向使用者展示
☼支援資料的多重視界:每個使用者所
看到的資料庫視界可能會不同,裡面
只描述該使用者需要知道的資料
資料庫管理
13
資料庫技術的主要特色 (3/3)
☼資料共享與多使用者的交易處理:能讓
多位使用者同時存取和更新資料庫。
DBMS的協同控制 (concurrency control)
功能可確保每筆交易都是正確的執行完
成或完全不執行。這類資料庫應用程式
主要是OLTP (Online Transaction
Processing) 應用程式
資料庫管理
14
資料庫目錄範例 (1/2)
Relations(關聯表)
Relation_name
(關聯表名稱)
STUDENT
COURSE
SECTION
GRADE_REPORT
PREREQUISITE
資料庫管理
No_of_columns
(欄位個數)
4
4
5
3
2
15
資料庫目錄範例 (2/2)
Columns (欄位)
Column_name
(欄位名稱)
Data_type
(資料型態)
Name
Character(30) STUDENT
Student_number
Character(4)
STUDENT
Class
Integer(1)
STUDENT
Major
Major_type
STUDENT
Course_name
Character(10) COURSE
Course_number
XXXXNNNN
COURSE
……
……
……
……
……
……
Prerequisite_number XXXXNNNN
資料庫管理
Belongs_to_relation
(隸屬於那個關聯表)
PREREQUISITE
16
資料庫的各種使用者 (1/4)
☼資料庫的使用者可以分成:
♦ 真正在使用和控制內容的人 ─ 舞台上
的演員
♦ 設計與建置DBMS軟體的人 ─ 幕後工
作者
資料庫管理
17
資料庫的各種使用者 (2/4)
☼舞台上的演員
♦ 資料庫管理師:負責授權存取資料庫、
協調及監督資料庫的使用、取得軟硬體
資源、控制它的使用和監督運作的效能
♦ 資料庫設計師:負責定義資料庫的內容、
結構、限制,以及函數和交易。他們必
須與終端使用者溝通以了解他們的需求
♦ 終端使用者:他們會查詢和使用資料來
製作報表,其中一部分人可以修改資料
庫的內容
資料庫管理
18
資料庫的各種使用者 (3/4)
♦ 終端使用者又可分為
▫ 偶爾使用:需要時偶爾會存取資料庫
▫ 初學或固定模式:這部分佔資料庫終端使
用者相當大的一部份。他們使用事先定義
好的 「固定交易」(canned transaction) 來
使用資料庫。例如銀行出納員和訂位人員
▫ 熟練:包括工程師、科學家、商業分析師,
以及其他對DBMS的功能相當熟悉的人。
其中很多人還會使用套裝軟體來利用資料
庫
▫ 單機:這大多是使用現成套裝軟體來維護
個人的資料庫。例如報稅軟體的使用者
資料庫管理
19
資料庫的各種使用者 (4/4)
☼幕後工作者
幕後工作者類型
工作說明
DBMS系統設計師與
實作人員
工具開發人員
設計和撰寫DBMS模組與
介面成為套裝軟體
設計和實作工具程式的人
操作和維護人員
負責實際執行與維護資料
庫系統軟硬體環境的系統
管理人員
資料庫管理
20
使用資料庫技術的優點 (1/2)
☼控制在資料儲存與開發和維護方面的
重複性
☼多位使用者可共用資料
☼限制未經授權的存取
☼提供程式物件永久的儲存空間
☼提供有效處理查詢的儲存結構
資料庫管理
21
使用資料庫技術的優點 (2/2)
☼提供備份與回復功能
☼提供多種使用者介面
☼表示資料之間的複雜關係
☼實施資料庫上的完整性限制
☼允許使用規則來進行推理與主動性
資料庫管理
22
使用資料庫技術的間接好處 (1/2)
☼強制符合標準:這對大型機構中的資料
庫應用程式能否成功非常重要。這裡的
標準包括資料項目、顯示格式、報表結
構、中繼資料等
☼減少應用程式開發的時間:新增每個新
應用程式所花的時間會減少
資料庫管理
23
使用資料庫技術的間接好處 (2/2)
☼變更資料結構的彈性:當需求改變時,
資料庫的結構可能也需要改變
☼可使用到最新的資訊:這對線上交易系
統非常重要,例如訂位或訂房系統
☼經濟效益:整合跨不同部門的資料和應
用程式,可避免人力與資源的浪費
資料庫管理
24
資料庫系統的簡史 (1/2)
☼早期的資料庫應用程式:階層式和網路式
模型在1960年代中期推出,而在70年代
主導整個市場。目前仍有許多全球性的資
料庫處理工作是以這些模型為基礎。
☼以關聯式模型為基礎的系統:此模型一開
始是在70年代推出,經過IBM與學術機構
的大量研究與實驗而成。在80年代開始出
現大量的關聯式DBMS產品
資料庫管理
25
資料庫系統的簡史 (2/2)
☼物件導向應用程式:OODBMS是在1980
年代後期出現,而在1990年代早期正好
迎合如CAD等應用的複雜資料處理的需
求。目前使用尚未普遍
☼在Web上交換電子商務資料:Web上的
網頁原本大多是以HTML (Hypertext
markup language) 撰寫而成。為了能在
Web上交換資料,因而發展出多種技術,
目前的主流是XML (eXtended Markup
Language)
資料庫管理
26
擴展資料庫的功能 (1/2)
☼資料庫系統的新應用領域
新應用領域
說明
科學
用來存放由科學實驗得到的大量資料,
例如高能量物理學或人類基因學
影像
儲存與擷取新聞照片或精密的衛星影像
或醫學影像
視訊
儲存與擷取從電影或數位攝影機取得的
視訊資料
資料探勘
(data mining)
分析大量的資料,找出隱藏的資訊或關
係
空間(spatial)資料
儲存空間位置資料,像是天氣資訊或地
理資訊系統中的地圖
時序(time series)資料
儲存隨著時間過去的即時資料,例如每
天的銷售數字
資料庫管理
27
擴展資料庫的功能 (2/2)
☼關聯式系統不適用資料庫新應用領域的原
因如下:
♦ 需要更複雜的資料結構
▫ 用簡單的關聯無法表示
♦ 需要新的資料型態
▫ 除了基本的數字和字元型態
♦ 要有新的運算和查詢語言來處理新的資料型態
♦ 需要新的儲存方式和索引結構
資料庫管理
28
何時不必使用DBMS
☼使用DBMS的初始成本:
♦ 剛開始的投資很大,而且可能需要額外的硬體
♦ 為了提供安全性、並行控制、復原和完整性而產生的額
外負擔
☼在何時不必使用DBMS:
♦ 假如資料庫和應用程式都很簡單、定義良好,而且不會
修改
♦ 假如因為DBMS的額外負擔,使得有些程式可能會無法
符合嚴格的即時(real-time)需求
♦ 假如不需要讓多位使用者存取資料
資料庫管理
29