CS 245: Database System Principles Notes 01: Introduction

Slides:



Advertisements
Similar presentations
Introduction to Database Design Donghui Zhang CCIS, Northeastern University.
Advertisements

CS4432Notes 11 CS 4432 Database Systems II Lecture 1: Introduction.
CMPT 454, Simon Fraser University, Fall 2009, Martin Ester 1 Database Systems II Introduction.
CSC 485E/CSC 571 Advanced Databases Introduction.
CSC 485E/SENG 480D/CSC 571 Advanced Databases Introduction.
CS Winter 2002Notes 11 CMPS 277: officially Relational Databases but this quarter Database Implementation Notes 01: Introduction Arthur Keller.
1 CENG 302 Introduction to Database Management Systems Nihan Kesim Çiçekli URL:
1 ICS 223: Transaction Processing and Distributed Data Management Winter 2008 Professor Sharad Mehrotra Information and Computer Science University of.
Databases and Database Management System. 2 Goals comprehensive introduction to –the design of databases –database transaction processing –the use of.
CS 245Notes 11 CS 245: Database System Principles Notes 01: Introduction Hector Garcia-Molina.
Introduction to Database Systems
CPS216: Advanced Database Systems Notes 03:Query Processing (Overview, contd.) Shivnath Babu.
CS462: Introduction to Database Systems. ©Silberschatz, Korth and Sudarshan1.2Database System Concepts Course Information Instructor  Kyoung-Don (KD)
1 CS222: Principles of Database Management Fall 2010 Professor Chen Li Department of Computer Science University of California, Irvine Notes 01.
Computer Network Fundamentals CNT4007C
Introduction. 
Instructor 彭智勇 武汉大学计算机学院珞珈学者特聘教授 软件工程国家重点实验室 电话 :
CS4432Notes 11 CS 4432 Database Systems II Lecture 1: Introduction.
CPS216: Advanced Database Systems Notes 02:Query Processing (Overview) Shivnath Babu.
CS4432Notes 11 CS 4432 Database Systems II Lecture 1: Introduction Professor Elke A. Rundensteiner Today: Tim Sutherland.
DBMS 2001Notes 1: Introduction1 Principles of Database Management Systems (Tietokannanhallintajärjestelmät) Pekka Kilpeläinen Fall 2001.
Introduction: The Megatron-3000 Database-Management System (Slides by Hector Garcia-Molina,
Introduction to Database Management Systems. Information Instructor: Csilla Farkas Office: Swearingen 3A43 Office Hours: M,T,W,Th,F 2:30 pm – 3:30 pm,
INFS614, Dr. Brodsky, GMU1 Database Management Systems INFS 614 Instructor: Professor Alex Brodsky
Overviews of ITCS 6161/8161: Advanced Topics on Database Systems Dr. Jianping Fan Department of Computer Science UNC-Charlotte
CSEP 545 Transaction Processing for E-Commerce Course Information Spring (March – May) 2007.
Introduction to Database Management Systems. Information Instructor: Csilla Farkas Office: Swearingen 3A43 Office Hours: Monday, Wednesday 2:30 pm – 3:30.
INTRODUCTION TO DBS Database: a collection of data describing the activities of one or more related organizations DBMS: software designed to assist in.
COMP4100: Database System Principles 01: Introduction.
CS 541 Lecture Slides Sunil Prabhakar CS541 Database Systems.
Introduction.  Administration  Simple DBMS  CMPT 454 Topics John Edgar2.
Chapter 15: Reliability and Security in Database Servers Neyha Amar CS 157B May 6, 2008.
Intro to Database Lecture 1: Course Overview 1. 2 Data analysis in the fight against human trafficking. All of society is online. New York DA use MEMEX.
CSE202 : Fundamentals of Database Systems Vikram Goyal Indraprastha Institute of Information Technology, Delhi (IIIT-D), India FROM : Slides from CSE202.
Computer Science Lecture 19, page 1 CS677: Distributed OS Last Class: Fault tolerance Reliable communication –One-one communication –One-many communication.
Chapter 11 Database System Implementation Spring 2001 Prof. Sang Ho Lee School of Computing, Soongsil Univ.
Chiu Luk CS257 Database Systems Principles Spring 2009
What is Database Administration ?
CPSC-310 Database Systems
CSCI5570 Large Scale Data Processing Systems
Course Overview - Database Systems
Instructor 彭智勇 武汉大学软件工程国家重点实验室 电话:
Database Management Systems
Course Introduction 공학대학원 데이타베이스
CS 245: Database System Principles Notes 01: Introduction
Introduction Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe.
CS 440 Database Management Systems
CS422 Principles of Database Systems Course Overview
Faloutsos/Pavlo C. Faloutsos – A. Pavlo Lecture#1: Introduction
Methodology – Physical Database Design for Relational Databases
Lecture 1 Introduction to Database
Introduction to Database Systems
Course Overview - Database Systems
Sidharth Mishra Dr. T.Y. Lin CS 257 Section 1 MH 222 SJSU - Fall 2016
Team Project, Part II NOMO Auto, Part II IST 210 Section 4
Selected Topics: External Sorting, Join Algorithms, …
Introduction to Database Management Systems
CS 4432 Database Systems II Lecture 1: Introduction
Outline Introduction Background Distributed DBMS Architecture
Instructor 彭智勇 武汉大学软件工程国家重点实验室 电话:
CS122B: Projects in Databases and Web Applications Spring 2018
Lecture 20: Intro to Transactions & Logging II
Evaluation of Relational Operations: Other Techniques
Transaction Management
Scholastic Dishonesty
Introduction to Database Systems
CPS216: Advanced Database Systems Notes 03:Query Processing (Overview, contd.) Shivnath Babu.
Introduction to Database Systems CSE 444
Lecture 1: Overview of CSCI 485 Notes: I presented parts of this lecture as a keynote at Educator’s Symposium of OOPSLA Shahram Ghandeharizadeh Director.
Lecture 1: Overview of CSCI 485 Notes: I presented parts of this lecture as a keynote at Educator’s Symposium of OOPSLA Shahram Ghandeharizadeh Associate.
Presentation transcript:

CS 245: Database System Principles Notes 01: Introduction Peter Bailis CS 245 Notes 1

This course pioneered by Hector Garcia-Molina All credit due to Hector All mistakes due to Peter CS 245 Notes 1

Hector Peter Assistant professor, CS New this year! Study data-intensive computing Usable large-scale ML Distributed systems CS 245 Notes 1

Come to OHs! CS 245 Notes 1

2017: Data is Insanely Important The New Oil Powers every modern application Collected in increasingly huge volumes Database systems are fundamental tech What’s the point of collecting if you can’t query, analyze, extract insight from it? Principles are widely applicable CS 245 Notes 1

Isn’t Implementing a Database System Simple? Relations Statements Results CS 245 Notes 1

MEGATRON 3000 The latest from Megatron Labs Introducing the MEGATRON 3000 Database Management System The latest from Megatron Labs Incorporates latest relational technology UNIX compatible CS 245 Notes 1

Megatron 3000 Implementation Details First sign non-disclosure agreement ! CS 245 Notes 1

Megatron 3000 Implementation Details Relations stored in files (ASCII) e.g., relation R is in /usr/db/R Smith # 123 # CS Jones # 522 # EE . . . CS 245 Notes 1

Megatron 3000 Implementation Details Directory file (ASCII) in /usr/db/directory R1 # A # INT # B # STR … R2 # C # STR # A # INT … . . . CS 245 Notes 1

Megatron 3000 Sample Sessions Welcome to MEGATRON 3000! & & quit % . . . CS 245 Notes 1

Megatron 3000 Sample Sessions & select * from R # Relation R A B C SMITH 123 CS & CS 245 Notes 1

Megatron 3000 Sample Sessions & select A,B from R,S where R.A = S.A and S.C > 100 # A B 123 CAR 522 CAT & CS 245 Notes 1

Megatron 3000 Sample Sessions & select * from R | LPR # & Result sent to LPR (printer). CS 245 Notes 1

Megatron 3000 Sample Sessions & select * from R where R.A < 100 | T # & New relation T created. CS 245 Notes 1

Megatron 3000 To execute “select * from R where condition”: (1) Read dictionary to get R attributes (2) Read R file, for each line: (a) Check condition (b) If OK, display CS 245 Notes 1

Megatron 3000 To execute “select * from R where condition | T”: (1) Process select as before (2) Write results to new file T (3) Append new line to dictionary CS 245 Notes 1

Megatron 3000 To execute “select A,B from R,S where condition”: (1) Read dictionary to get R,S attributes (2) Read R file, for each line: (a) Read S file, for each line: (i) Create join tuple (ii) Check condition (iii) Display if OK CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? Tuple layout on disk e.g., - Change string from ‘Cat’ to ‘Cats’ and we have to rewrite file - ASCII storage is expensive - Deletions are expensive CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? Search expensive; no indexes e.g., - Cannot find tuple with given key quickly - Always have to read full relation CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? Brute force query processing e.g., select * from R,S where R.A = S.A and S.B > 1000 - Do select first? - More efficient join? CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? No buffer manager e.g., Need caching CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? No concurrency control CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? No reliability e.g., - Can lose data - Can leave operations half done CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? No security e.g., - File system insecure - File system security is coarse CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? No application program interface (API) e.g., How can a payroll program get at the data? CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? Cannot interact with other DBMSs. CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? Poor dictionary facilities CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? No GUI CS 245 Notes 1

What’s wrong with the Megatron 3000 DBMS? Lousy salesman!! CS 245 Notes 1

Course Overview File & System Structure Indexing & Hashing Records in blocks, dictionary, buffer management,… Indexing & Hashing B-Trees, hashing,… Query Processing Query costs, join strategies,… Crash Recovery Failures, stable storage,… CS 245 Notes 1

Course Overview Concurrency Control Transaction Processing Correctness, locks,… Transaction Processing Logs, deadlocks,… Security & Integrity Authorization, encryption,… Distributed Databases Interoperation, distributed recovery,… CS 245 Notes 1

System Structure Strategy Selector Query Parser User User Transaction Transaction Manager Concurrency Control Buffer Manager Recovery Manager Lock Table File Manager M.M. Buffer Log Statistical Data Indexes User Data System Data CS 245 Notes 1

Stanford Data Management Courses CS 145 Fall CS 345 CS 246 CS 245 here Advanced Topics Mining Massive Datasets Winter Winter (not in 2016) Winter CS 346 CS 347 CS 395 CS 545 CS 341 CS 224W Database System Implement. Parallel & Distributed Data Mgmt Independent DB Project DB Seminar Social Info and Network Analysis Projects in MMDS Winter (not 2016) All Spring Spring Spring Fall CS 245 Notes 1

If you did not take CS145: You can still take this class Read in textbook: Chapter 2 (Relational Model) through Section 2.4 Chapter 6 (SQL) through Section 6.2 CS 245 Notes 1

Some Terms Database system Transaction processing system File access system Information retrieval system CS 245 Notes 1

Mechanics http://www.stanford.edu/class/cs245/ CS 245 Notes 1

Staff cs245-win1617-staff@lists.stanford.edu OR Piazza INSTRUCTOR: Peter Bailis Office: Gates 410 Office Hours: Wednesdays 3-4PM TEACHING ASSISTANTS Timothy Lee Aaron Loh Danyang Wang Connie Zeng cs245-win1617-staff@lists.stanford.edu OR Piazza CS 245 Notes 1

CS 245 Notes 1

Details LECTURES: Monday, Wednesday 1:30 to 2:50pm, NVidia Auditorium TEXTBOOK: Garcia-Molina, Ullman, Widom “DATABASE SYSTEMS, THE COMPLETE BOOK” [Second edition] ASSIGNMENTS: Six written homework assignments. Two (or three) MySQL "code analysis" homeworks. Also readings in Textbook. GRADING: Homeworks: 20%, Midterm: 30%, Final: 50%. WEB SITE: All handouts & assignments will be posted on our Web site at http://www.stanford.edu/class/cs245 Please check it periodically for last minute announcements. CS 245 Notes 1

Read: Chapters 11-20 [13-22 in Second Edition] Except following optional material [brackets for Second Edition Complete Book]: Sections 11.7.4, 11.7.5 [13.4.8, 13.4.9] Sections 14.3.6, 14.3.7, 14.3.8 [14.6.6, 14.6.7, 14.6.8] Sections 14.4.2, 14.4.3, 14.4.4 [14.7.2, 14.7.3, 14.7.4] Sections 15.7, 15.8, 15.9 [15.7, 15.8] Sections 16.6, 16.7 [16.6, 16.7] In Chapters 15, 16 [15, 16]: material on duplicate elimination operator, grouping, aggregation operators Section 18.8 [18.8] Sections 19.2 19.4, 19.5, 19.6 [none, i.e., read all Ch 19] [In the Second Edition, skip all of Chapter 20, and Sections 21.5, 21.6, 21.7, 22.2 through 22.7] CS 245 Notes 1

Next time: Hardware Read chapter 11 [13.1 through 13.4] CS 245 Notes 1