Unformatted text preview:

CS432, Fall 2004 1Introduction to Database SystemsCS432Instructor: Johannes Gehrke, [email protected], Fall 2004 2CS432/433: Introduction to Database Systems• How does Wal-Mart manage its 200 TB data warehouse?• What is the database technology behind ebay’s website?• How do you build an Oracle 9i, IBM DB2 or Microsoft SQL Server database?CS432, Fall 2004 3CS432/433: Introduction to Database Systems• Underlying theme: How do I build a database system?• CS432 will deal with the underlying concepts• No programming assignments• Big change from previous years!• CS433 will be the practicum• Build components of “realistic database system”(C++ programming)CS432, Fall 2004 4CS432 Course Information• Information is one of the most valuable resources in this information age• How do we effectively and efficiently manage this information?• Relational database management systems• Dominant data management paradigm today• 6 billion dollar a year industry• You will see this in the job market!CS432, Fall 2004 5Prerequisites•Courses• CS212 (Computers and Programming)• CS312 (Structure and Interpretation of Computer Programs)CS432, Fall 2004 6People•Instructor• Johannes Gehrke•TAs•Abhinandan Das•Nick GernerCS432, Fall 2004 7Access to Instructor and TAs• Office hours• Posted on course web site• http://www.cs.cornell.edu/courses/cs432• Course newsgroup• Monitored by TAs• Reply within 24 hours on weekdays, 48 hours on weekends• TA mailing list• [email protected]• Do not directly email TAsCS432, Fall 2004 8Course Structure• Three components• Class lectures (5% for class participation)• Assignments (40%)• Examinations (55%)• No programming assignments in CS432• Big change from previous years!• CS433 will have all programming assignmentsCS432, Fall 2004 9Class Lectures• Textbook: “Database Management Systems”(3rdEdition)• By Raghu Ramakrishnan and Johannes Gehrke•Required textbook• Syllabus• Defined by class lectures, will be online tonight• Not defined by textbookCS432, Fall 2004 10Course Structure• Three components• Class lectures (5% for class participation)• Assignments (40%)• Examinations (55%)CS432, Fall 2004 11Assignments• Nine assignments• Six written assignments• Two SQL assignments• Each assignment worth 5% of total gradeCS432, Fall 2004 12Assignment Policies• Assignments have to be done individually• No collaboration with others• Academic integrity violations taken VERY seriously• Read Cornell and CS academic integrity policies• Available off course web page• Need to sign and hand in form• Course management system used to post assignment gradesCS432, Fall 2004 13Assignment Policies (contd.)• No late submissions• Will receive 0% of grade for late submissions• No exceptions (assignments handed out well in advance of deadline)• Regrade requests• Within 7 days after assignments are graded• Hard deadlineCS432, Fall 2004 14Course Structure• Three components• Class lectures (5% for class participation)• Assignments (40%)• Examinations (55%)CS432, Fall 2004 15Exams• Mid-term exam (20%)• 21 October 2004, 7:30-9:30pm• Closed book exam• Final exam (35%)• Examination period• Closed book exam• Cumulative with emphasis on second half• Do not schedule other events on these daysCS432, Fall 2004 16Relationship to CS433• CS432 is about concepts underlying databases• No programming assignments• CS433 is the practicum associated with CS432• Will actually build a “realistic” database system• C++ programming (okay if you know Java)• Complementary• Suggest that you take both• Can take CS432 without taking CS433• Cannot take CS433 without taking CS432CS432, Fall 2004 17Is CS432/433 a lot of work?•It depends!• Much of the material in CS432 is probably new to you• CS433 has substantial programming assignments• Then why on earth should I take this course?• Intellectual argument• Big conceptual ideas• Meeting of theory and practice• Utilitarian argument• Many, many real applications (digital libraries, web, …)•Job market!CS432, Fall 2004 18CS530: Architecture of Large-Scale Information Systems• How do you build e-commerce websites such as amazon.com?• How do you build a reliable service that scales to millions of users?• How are Internet transactions processed?• How do you manage audio, video and XML data?CS432, Fall 2004 19CS530: Architecture of Large-Scale Information Systems• Underlying theme: How do I build applications on top of a database system?• Will combine coverage of fundamental concepts with “hands-on” experience• Prerequisite: CS432CS432, Fall 2004 20CS530: Material Covered• Three-tier architectures• Edge caches• Distributed transaction management• Web services• Content management• Technologies: .NET, JSPs, ASPs, Servlets, Enterprise Java Beans (EJBs), XML, SOAPCS432, Fall 2004 21Reminder• Complete academic integrity form• Need to hand this in for your course management system accountCS432, Fall 2004 22What Is a DBMS?• A very large, integrated collection of data.• Models real-world enterprise.• Entities (e.g., students, courses)• Relationships (e.g., Madonna is taking CS564)•A Database Management System (DBMS) is a software package designed to store and manage databases.CS432, Fall 2004 23Files vs. DBMS• Application must stage large datasets between main memory and secondary storage (e.g., buffering, page-oriented access, 32-bit addressing, etc.)• Special code for different queries• Must protect data from inconsistency due to multiple concurrent users• Crash recovery• Security and access controlCS432, Fall 2004 24Why Use a DBMS?• Data independence and efficient access.• Reduced application development time.• Data integrity and security.• Uniform data administration.• Concurrent access, recovery from crashes.CS432, Fall 2004 25Why Study Databases??• Shift from computation to information• at the “low end”: scramble to webspace (a mess!)• at the “high end”: scientific applications• Datasets increasing in diversity and volume. • Digital libraries, interactive video, Human Genome project, EOS project • ... need for DBMS exploding• DBMS encompasses most of CS• OS, languages, theory, “A”I, multimedia, logic?CS432, Fall 2004 26Data Models•A data model is a collection of concepts for describing


View Full Document
Download Course Overview
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Course Overview and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Course Overview 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?