Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to Database Systems CSE 444 Lecture #1 September, 27 1999.

Similar presentations


Presentation on theme: "Introduction to Database Systems CSE 444 Lecture #1 September, 27 1999."— Presentation transcript:

1 Introduction to Database Systems CSE 444 Lecture #1 September, 27 1999

2 Staff zInstructor: Alon Levy ySieg, Room 310, alon@cs.washington.edu yOffice hours: Wednesday 2:30-3:30 y (or by appointment) zTA: Rachel Pottinger ySieg 226b, rap@cs.washington.edu yOffice hours: Tuesday 2-3, Thursday 1:30 - 2:30 or by appointment

3 Communications  Web page: http://www.cs.washington.edu/444/ zMailing list: send email to majordomo@cs saying: subscribe cse444

4 Textbook(s) zA First Course in Database Systems xby Jeff Ullman and Jennifer Widom zDatabase Implementation xby Hector Garcia-Molina, Jeff Ullman and Jennifer Widom zAvailable in a shrink-wrapped package at the book store (not available in that form for non-students).

5 Other Texts zDatabase Management Systems (Ramakrishnan) [very comprehensive] zFundamentals of Database Systems (Elmasri and Navathe) [very widely used] zFoundations of Databases (Abiteboul, Hull and Vianu) [Mostly theory of databases] zAvailable, on reserve, in the library.

6 Real Business: Why use a DBMS? Suppose we are building a system to store the information pertaining to the university. Several questions arise: zhow do we store the data? (file organization, etc.) zhow do we query the data? (write programs…) zmake sure that updates don’t mess things up? zProvide different views on the data? (registrar versus students) zhow do we deal with crashes? Way too complicated! Go buy a database system!

7 Functionality of a DBMS zStorage management zAbstract data model zHigh level query and data manipulation language zEfficient query processing zTransaction processing zResiliency: recovery from crashes zDifferent views of the data, security zInterface with programming languages

8 Building an Application with a Database System zRequirements modeling (conceptual, pictures) yDecide what entities should be part of the application and how they should be linked. zSchema design and implementation yDecide on a set of tables, attributes. yDefine the tables in the database system. yPopulate database (insert tuples). zWrite application programs using the DBMS yway easier now that the data management is taken care of.

9 address namefield Professor Advises Takes Teaches Course Student namecategory quarter name ssn Conceptual Modeling

10 Schema Design and Implementation  Table Students zSeparates the logical view from the physical view of the data.

11 Querying a Database zFind all the students who have taken CSE444 in Fall, 1997. zS(tructured) Q(uery) L(anguage) yselect E.name yfrom Enroll E ywhere E.course=CS444 and y E.quarter=“Fall, 1997” zQuery processor figures out how to answer the query efficiently.

12 Query Optimization Reserves Sailors sid=sid bid=100 rating > 5 sname (Simple Nested Loops) Imperative query execution plan: SELECT S.sname FROM Reserves R, Sailors S WHERE R.sid=S.sid AND R.bid=100 AND S.rating>5 Declarative SQL query Plan: Tree of Relational Algebra operators, with a choice of algorithm implementation for each operator Ideally: Want to find best plan. Practically: Avoid worst plans! Goal:

13 Database Industry zRelational databases are a great success of theoretical ideas. z“Big 3” DBMS companies are among the largest software companies in the world. zIBM (with DB2) and Microsoft (SQL Server, Microsoft Access) are also important players. z$20B industry. zChallenged by object oriented DBMS.

14 The Study of DBMS zSeveral aspects: yModeling and design of databases yDatabase programming: querying and update operations yDatabase implementation zDBMS study cuts across many fields of Computer Science: OS, languages, AI, Logic, multimedia, theory...

15 Course (Rough) Outline zDatabase design: yEntity Relationship diagrams yODL (object-oriented design language) yModeling constraints zThe relational model: yRelational algebra yTransforming E/R models to relational schemas

16 Outline (Continued) zSQL (“intergalactic dataspeak”) yViews and triggers zRecursive queries and datalog zObject-oriented features zStorage and indexing zQuery optimization zTtransaction processing and recovery zAdvanced topics:data integration, XML

17 Structure zPrerequisites: Data structures course (CSE-326 or equivalent). zWork & Grading: yHomework 25%: 6 of them, some light programming. yProject: 30% - see below. yMidterm: 15% yFinal: 25% yIntangibles: 5%

18 The Project zGoal: design end-to-end database application. zWork in groups of 3-4 (start forming now). zChoose topic on your own. zSome service projects available. zTimetable for project milestones. zBe creative! zStart soon!!


Download ppt "Introduction to Database Systems CSE 444 Lecture #1 September, 27 1999."

Similar presentations


Ads by Google