Principles of Database Management Systems CSE 544 - PowerPoint PPT Presentation

About This Presentation
Title:

Principles of Database Management Systems CSE 544

Description:

Principles of Database Management Systems CSE 544 Introduction March 29th, 2000 Staff Instructor: Alon Levy Sieg, Room 310, alon_at_cs.washington.edu Office hours: by ... – PowerPoint PPT presentation

Number of Views:83
Avg rating:3.0/5.0
Slides: 25
Provided by: CSE128
Category:

less

Transcript and Presenter's Notes

Title: Principles of Database Management Systems CSE 544


1
Principles of Database Management SystemsCSE 544
  • Introduction
  • March 29th, 2000

2
Staff
  • Instructor Alon Levy
  • Sieg, Room 310, alon_at_cs.washington.edu
  • Office hours by appointment.
  • TAs Bart Niswonger and Stefan Saroiu
  • Office hours also by appointment.
  • Mailing list cse544_at_cs
  • Web page (a lot of stuff already there)
    http//www.cs.washington.edu/education/courses/544
    /00sp/

3
Course Times
  • In general, WF, 12-120pm (with a 3 minute
    breather in the middle).
  • Special dates
  • Mondays, April 3, 10, 24.
  • No classes on week of May 15th.

4
Goals of the Course
  • Purpose
  • Foundations of database management systems.
  • Issues in building database systems.
  • Introduction to current research issues in
    databases.
  • Have fun databases are not just bunches of
    tuples.

5
Grading
  • Homeworks 35
  • Very little regurgitation.
  • Meant to be challenging (I.e., fun).
  • Project 50
  • More later.
  • Participation 15
  • No Exams.

6
Textbook
  • Database Management Systems,
  • Ramakrishnan and Gehrke.

7
Other Useful Texts
  • Pair of books by Ullman, Widom and Garcia-Molina
  • Foundations of Databases (Abiteboul, Hull
    Vianu)
  • Parallel and Distributed DBMS (Ozsu and
    Valduriez)
  • Transaction Processing (Gray and Reuter)
  • Database Systems (Silberschatz, Korth and
    Sudarshan)
  • Data and Knowledge based Systems (volumes I, II)
    (Ullman)
  • Readings in Database Systems (Stonebraker and
    Hellerstein)
  • Proceedings of SIGMOD, VLDB, PODS conferences.

8
Prerequisites
9
Real Prerequisites
  • Operating systems
  • Data structures and algorithms
  • Distributed systems
  • Complexity theory
  • Mathematical Logic
  • Knowledge Representation
  • User interface design
  • Programming languages
  • Artificial Intelligence (Search)
  • Greek, Hebrew, French, Romanian

10
Why Use a DBMS?
All programs manipulate data, so why use a
database?
  • Large amounts of data (Gigas, Teras)
  • Data is very structured
  • Persistent data
  • Valuable data
  • Performance requirements
  • Concurrent access to the data
  • Restricted access to data

11
Functionality of a DBMS
  • Persistent storage management
  • Transaction management
  • Resiliency recovery from crashes.
  • Separation between logical and physical views of
    the data.
  • High level query and data manipulation language.
  • Efficient query processing
  • Interface with programming languages

12
Terminology
Attribute names
Product (relation name)
Name Price Category
Manufacturer gizmo 19.99
gadgets GizmoWorks Power
gizmo 29.99 gadgets
GizmoWorks SingleTouch 149.99
photography Canon MultiTouch 203.99
household Hitachi
tuples
(Arity4)
Product(name string, Price real, category
enum, Manufacturer string)
13
Querying a Database
  • SELECT S.sname, phone
  • FROM Purchase P, Person Q
  • WHERE P.buyerQ.name AND
  • Q.cityseattle AND
  • Q.phone gt 5430000
  • SQL (Structured Query Language)
  • An acquired taste
  • Datalog kinder, gentler language

14

Query update
User/ Application
Query optimizer
Query execution plan
Execution engine
Record, index requests
Index/record mgr.
Page commands
Buffer manager
Read/write pages
Storage manager
storage
15
Storage Management
  • Becomes a hard problem because of the interaction
    with the other levels of the DBMS
  • What are we storing?
  • Efficient indexing, single and multi-dimensional
  • Exploit semantic knowledge
  • Issue interaction with the operating system.
    Should we rely on the OS?

16
Query Execution Plans
Find names and phones of people who bought
telephony products
Buyer,phone
Buyer,phone
?
?
Categorytelephony
Categorytelephony
(hash join)
(hash join)
prodpname
Buyername
(sort-merge join)
(hash join)
Product
Buyername
Person
prodpname
Person
Purchase
Product
Purchase
Imperative programs for evaluating queries. Many
choices to make.
17
Query Optimization
Goal
Imperative query execution plan
Declarative SQL query
buyer
?
Cityseattle
phonegt5430000
SELECT S.sname,phone FROM Purchase P, Person
Q WHERE P.buyerQ.name AND
Q.cityseattle AND Q.phone gt 5430000
(hash join)
Buyername
Person
Purchase
Plan Tree of R.A. ops, with choice of alg for
each op.
Ideally Want to find best plan. Practically
Avoid worst plans!
18
TP and Recovery
  • For efficient use of resources, we want
    concurrent access to data.
  • Systems sometimes crash.
  • A real database guarantees ACID
  • Atomicity all or nothing of a transaction.
  • Consistency always leave the DB consistent.
  • Isolation every transaction runs as if its the
    only one in the system.
  • Durability if committed, we really mean it.
  • Do we really want ACID?

19
Data Integration
  • Uniform query capability across autonomous,
    heterogeneous data sources on LAN, WAN, or
    Internet

20
XML Semi-structured Data
eXtensible Markup Language
  • Emerging format for data exchange on the web and
    between applications.

21
Database Industry
  • Relational databases are a great success of
    theoretical ideas.
  • Oracle has a market cap of over 200B
  • Other players IBM, MS, Sybase, Informix
  • Trends
  • warehousing and decision support
  • data integration
  • XML, XML, XML.

22
Course (Rough) Outline
  • The basics (quickly)
  • The relational model
  • SQL
  • Views, integrity constraints
  • XML
  • Physical representation
  • Index structures.

23
Course Outline (cont)
  • Query execution (Zack Ives)
  • Algorithms for joins, selections, projections.
  • Query Optimization
  • Data Integration
  • semi-structured data
  • Transaction processing and recovery (Phil
    Bernstein)

24
Projects
  • Goal identify and solve a problem in database
    systems.
  • (almost) anything goes.
  • Groups of 2-3
  • Groups assembled end of week 2
  • Proposals, end of week 3.
  • Touch base with me every two weeks.
  • Example projects on web site.
  • Start Early.
Write a Comment
User Comments (0)
About PowerShow.com