260 likes | 451 Views
An Introduction to Database Systems 資料庫系統. 陳日昌 Fall 2008. Contents 內容綱要. Introduction (1 wk) SQL: DML and DDL (4 wks) Constraints and Triggers (1 wk), E/R modeling (2 wks) and E/R CASE Tool (2 wks) Functional Dependencies (0-1 wks) Drills and Exams. Why learn this? 我可以學到什麼?. 目標
E N D
An Introduction toDatabase Systems資料庫系統 陳日昌 Fall 2008
Contents 內容綱要 • Introduction (1 wk) • SQL: DML and DDL (4 wks) • Constraints and Triggers (1 wk), • E/R modeling (2 wks) and E/R CASE Tool (2 wks) • Functional Dependencies (0-1 wks) • Drills and Exams
Why learn this?我可以學到什麼? 目標 • 資料庫系統的基本知識 • 操作資料庫的方法 (Data Manipulation) • 分析並定義資料庫 (Modeling and Definition) • 程式介面 (Programming Interface) • 工作與就業能力
Prerequisites 預修與要件 • Data structures 基本的資料結構知識 • C/C++ programming language • 作業系統操作與概念 • 平台: MS Windows或Linux • MySQL: http://www.mysql.org • 有空請試甲骨文: http://www.oracle.com
Syllabus 授課規定 • 時間:每週三小時 • Textbook 課本:講義與Internet • 作業就是考試題目 • 課堂時間規定:請尊重他人權益 • 聯絡:jctan@mail.sju.edu.tw • Subject: [DB4x]主旨 • 四真[DB4J] 四德[DB4T]
主要參考書與網路資料 • Database Systems The Complete Book, (“DSCB”) Garcia-Molina, Ullman, Widom • Jeff Ullman's offering of the CS145 course in the Autumn of 2004 • Chap 1-2 Free Download • 滄海書局
圖書館「指定參考書」 • “Database – Design, Application Development & Administration,” 2nd Ed. • Michael V. Mannino • 資料庫管理設計及其應用 • 翻譯:劉金順 • 普林斯頓 出版 • 高立圖書
經典教課書 • An Introduction to Database Systems, Eighth Edition by C.J. Date
Course Website講義資料 • teacher.sju.edu.tw/~jctan/ • 請自行查看講義並下載軟體 • 有關英文 • 從Keywords〈關鍵字〉學起 • 把握技術英文以及常用字:一再出現才查 • 正確觀念:不必恐懼或崇拜
Grading 作業與考試評分 • Midterm 50 pts, Final 40 pts, other 10 pts • 上機實作考試 • Open book and notes • No discussion, no communication (獨立作業) • 1 makeup* • 作弊? • 當掉!沒有補考或補救方法 延畢? • 依照校規處理
Questions? 歡迎提問
“Database Systems? Why?” 什麼是資料庫系統? 為何需要這樣的系統?
Chapter 1 (DSCB)The Worlds of Database Systems • Databases are everywhere! • Internal records and management 內部管理 • Presenting data (e.g., WWW) • Scientific or engineering data • Specialized software for this is called a database management system, DBMS, or simply “database system.”
Key Features • Persistent storage – more than a file system • Programming interface – through a powerful query language • Transaction management – supports concurrent, i.e., simultaneous, access to data by multiple processes (called “transactions” – 「交易」)
“What is a database?” • 通常只是持續存在多年的一些資訊 • 常識上而言 – 由DBMS管理的一些資訊 • DBMS通常能夠提供以下功能 • 經由Data-Definition Language (DDL)定義新資料庫或稱Schema • 經由Data-Manipulation Language (DML)或稱Query Language讓使用者詢問或修改 • 大量資料、長時間、多使用者 • 同時使用
The Evoluation • Since late 1960’s, evolved from file systems • Early important applications • Airline Reservation Systems • Seat Reservation, Assignment, Cancellation, etc. • Flight information • Concurrent processing • Banking Systems • ATM
“Relational Databases” Ted Codd, 1970 • A simple view of data in tables or called relations
DSCB Example • A relation named Accounts 欄位名稱Attributes (屬性) 如accountNo, balance, type. 資料列稱為Rows或Tuples
Some Queries • 要查帳號67890的餘額 • SELECT balance FROM Accounts WHERE accountNo = 67890 • 要查儲蓄餘額為負的帳號 • SELECT accountNo FROM Accounts WHERE type=‘saving’ AND balance <0 • 存取、處理詢問、增進處理效率等問題都交給資料庫管理系統
需求演變 • 小型化 – 在低價電腦上能普遍應用 • 大型化 – 資料越來越多;超大容量 • 三級貯存系統 (Tertiary Storage) • Primary Storage? • Secondary Storage? (also RAID) • Parallel Computing (平行計算) • Multiprocessors, GRID
Client-Server and Multi-Tier Architecture • 客戶-伺服器 • Two-Tier (兩層) 到 Three-Tier (三層) • Client-Webserver-DBMS • Four-Tier (四層) • Client-Web server-Application Server-DBMS • More…
Embedded Databases • 不區分客戶-伺服器,附帶漁單一程式內 • 例如SQLite (www.sqlite.org) 使用於: • Mozilla (browser) • Symbian (Smartphone OS) • iPhone (Apple smartphone) • gPhone (Google smartphone)
Multimedia Data • Video, images, audio, and other “signals.” • “BLOB” (BLock Of Binary) data type • How to search for a particular blob data? • For example, google image search • OO (Object Oriented) approach • Multimedia data delivery is not conventional; 音樂/電影資料庫的播放
XML Databases • XML (eXtensible Markup Language) as the data definition language (DDL) • Flexible • Web (http) oriented but not limited to web
Overview of a DBMS(Fig. 1.1, DSCB) • DML processing • Query compiler • Execution engine • File manager, buffer manager, storage manager • Transaction processing • Transaction manager • Logging and recovery • Concurrency control • Database administration • DDL compiler
Next Week • Installation of MySQL • Basic Administration • Simple queries Reading – Chap. 1 DSCB. Download and install MySQL (5.0)