Introduc)on to Database Systems CSE 444. Lecture #1 March 29, 2010

Similar documents
Introduction to Database S ystems Systems CSE 444 Lecture 1 Introduction CSE Summer

Introduction to Database Systems CSE 444. Lecture 1 Introduction

Introduction to Database S ystems Systems CSE 444 Lecture 1 Introduction CSE Summer

Introduction to Database Systems CSE 444. Lecture #1 March 26, 2007

Introduction to Data Management CSE 344. Lecture 1: Introduction

Principles of Database Systems CSE 544. Lecture #1 Introduction and SQL

Principles of Database Systems CSE 544. Lecture #1 Introduction and SQL

Your New App. Motivation. Data Management is Universal. Staff. Introduction to Data Management (Database Systems) CSE 414. Lecture 1: Introduction

Introduction to Data Management (Database Systems) CSE 414

Introduction to Database Systems

CSE 303: Database. Teaching Staff. Lecture 01. Lectures: 1 st half - from a user s perspective. Lectures: 2 nd half - understanding how it works

CSE 344 JANUARY 3 RD - INTRODUCTION

CMPT 354: Database System I. Lecture 1. Course Introduction

Introduction to Information Systems SSC, Semester 6

CMPSCI 645 Database Design & Implementation

CSE 544 Principles of Database Management Systems

CS 564: DATABASE MANAGEMENT SYSTEMS. Spring 2018

CS 4604: Introduc0on to Database Management Systems

CS 245: Database System Principles

CS 4604: Introduc0on to Database Management Systems. B. Aditya Prakash Lecture #1: Introduc/on

Principles of Database Systems CSE 544p. Lecture #1 September 28, 2011

Introduction to CS 4604

Introduction to Databases Fall-Winter 2010/11. Syllabus

Database Management Systems CS Spring 2017

Database Systems CSE 414

Outline. Database Management Systems (DBMS) Database Management and Organization. IT420: Database Management and Organization

Outline. Databases and DBMS s. Recent Database Applications. Earlier Database Applications. CMPSCI445: Information Systems.

Course Web Site. 445 Staff and Mailing Lists. Textbook. Databases and DBMS s. Outline. CMPSCI445: Information Systems. Yanlei Diao and Haopeng Zhang

CMPSCI445: Information Systems

Course and Contact Information. Course Description. Course Objectives

Database Management System Implementation. Who am I? Who is the teaching assistant? TR, 10:00am-11:20am NTRP B 140 Instructor: Dr.

CMPUT 391 Database Management Systems. Fall Semester 2006, Section A1, Dr. Jörg Sander. Introduction

Outline. Quick Introduction to Database Systems. Data Manipulation Tasks. What do they all have in common? CSE142 Wi03 G-1

Introduction to Databases

CS634 Architecture of Database Systems Spring Elizabeth (Betty) O Neil University of Massachusetts at Boston

COMP-421: Database Systems. Joseph D silva McConnel Engg. 102

Course: Database Management Systems. Lê Thị Bảo Thu

COMP-421: Database Systems. Joseph D silva McConnel Engg. 102

CS 4604: Introduction to Database Management Systems. B. Aditya Prakash Lecture #1: Introduction

CSE 344 Sec)on 8 [Srini] 1. Talking to Databases using Java 2. Surviving Homework 7

San José State University College of Science / Department of Computer Science Introduction to Database Management Systems, CS157A-3-4, Fall 2017

Course and Contact Information. Course Description. Course Objectives

CMPT 354 Database Systems I. Spring 2012 Instructor: Hassan Khosravi

CS157a Fall 2018 Sec3 Home Page/Syllabus

Introduction to Databases Fall-Winter 2009/10. Syllabus

CMPS 182: Introduction to Database Management Systems. Instructor: David Martin TA: Avi Kaushik. Syllabus

COMP.3090/3100 Database I & II. Textbook

In-class activities: Sep 25, 2017

Introduction to Database Systems

What s a database anyway?

CS 525 Advanced Database Organization - Spring 2017 Mon + Wed 1:50-3:05 PM, Room: Stuart Building 111

Introduction to Databases

Databases TDA357/DIT620. Niklas Broberg

BBM371- Data Management. Lecture 1: Course policies, Introduction to DBMS

EECS 647: Introduction to Database Systems

Introduction to Database Systems

5/1/17. Announcements. NoSQL Motivation. NoSQL. Serverless Architecture. What is the Problem? Database Systems CSE 414

Database Systems CSE 414

Database Systems CSE 414

5/2/16. Announcements. NoSQL Motivation. The New Hipster: NoSQL. Serverless. What is the Problem? Database Systems CSE 414

Who, where, when. Database Management Systems (LIX022B05) Literature. Evaluation. Lab Sessions. About this course. After this course...

Before we talk about Big Data. Lets talk about not-so-big data

Database Systems Management

Course Book Academic Year

10/18/2017. Announcements. NoSQL Motivation. NoSQL. Serverless Architecture. What is the Problem? Database Systems CSE 414

Database Systems CSE 414

TEACHING & ASSESSMENT PLAN

Solution Manuals Of Database System By Ullman READ ONLINE

San José State University Computer Science Department CS157A: Introduction to Database Management Systems Sections 5 and 6, Fall 2015

BIS Database Management Systems.

MIS Database Systems.

Databases: Introduction

9/8/2018. Prerequisites. Grading. People & Contact Information. Textbooks. Course Info. CS430/630 Database Management Systems Fall 2018

Database Systems ( 資料庫系統 ) Practicum in Database Systems ( 資料庫系統實驗 ) 9/20 & 9/21, 2006 Lecture #1

INF 315E Introduction to Databases School of Information Fall 2015

Course and Contact Information. Catalog Description. Course Objectives

Introduction to Database Systems CSE 344

CS430/630 Database Management Systems Spring, Betty O Neil University of Massachusetts at Boston

Announcements. Two Classes of Database Applications. Class Overview. NoSQL Motivation. RDBMS Review: Serverless

Database Concepts. CS 377: Database Systems

Avi Silberschatz, Henry F. Korth, S. Sudarshan, Database System Concept, McGraw- Hill, ISBN , 6th edition.

Lecture Notes CPSC 321 (Fall 2018) Today... Survey. Course Overview. Homework. HW1 (out) S. Bowers 1 of 8

Introduction to Data Management. Lecture #2 (Big Picture, Cont.) Instructor: Chen Li

Introduction to Data Management. Lecture #2 (Big Picture, Cont.)

CMSC Introduction to Database Systems

Informatics 1: Data & Analysis

Introduction. Who wants to study databases?

Introduction. Example Databases

DATABASE MANAGEMENT SYSTEMS

Course Requirements. Prerequisites Miscellaneous

Introduc3on to Data Management

CSC 261/461 Database Systems. Fall 2017 MW 12:30 pm 1:45 pm CSB 601

CS 5614: (Big) Data Management Systems. B. Aditya Prakash Lecture #1: Introduc/on

Databases 1. Daniel POP

ECS 165B: Database System Implementa6on Lecture 14

Chapter 1 Introduction

Advanced Topics in Database Systems Spring 2016

CAS CS 460/660 Introduction to Database Systems. Fall

CS 445 Introduction to Database Systems

Department of Accounting & Law, School of Business. State University of New York at Albany. Acc 682 Analysis & Design of Accounting Databases

Transcription:

Introduc)on to Database Systems CSE 444 Lecture #1 March 29, 2010 1

Staff Instructor: Dan Suciu CSE 662, suciu@cs.washington.edu Office hours: Mondays 1:30 2:30 Grad TA: Jessica Leung joyleung@cs.washington.edu UGrad TA: Daniel Swisher, Derek Cheng 2

Communica)ons Web page: hup://www.cs.washington.edu/444/ Lectures will be available here The project descrip)on will be here Homework will be posted here Mailing list: Announcements, group discussions Please subscribe 3

Textbook(s) Main textbook, available at the bookstore: Database Systems: The Complete Book, Hector Garcia Molina, Jeffrey Ullman, Jennifer Widom Most important: COME TO CLASS & SECTIONS! 4

Other Texts Available at the Engineering Library (not on reserve): Database Management Systems, Ramakrishnan Fundamentals of Database Systems, Elmasri, Navathe Founda;ons of Databases, Abiteboul, Hull, Vianu Data on the Web, Abiteboul, Buneman, Suciu XQuery from the Experts, Katz, Ed. 5

Course Format Lectures MWF, 1:30 2:20, MGH 241 Quiz sec)ons: Th 8:30 9:20, JHN 026 Jessica Th 9:30 10:20, JHN 026 Jessica Th 9:30 10:20, MEB 235 Daniel/Derek/Dan (alternate?) 4 Mini projects 4 homework assignments Midterm, final 6

Grading Homework 30% Project 30% Midterm 15% Final 25% 7

4 Mini Project 1. SQL (already posted) 2. SQL in Java 3. Database tuning 4. Map/reduce Due: Wednesday s every other week by 11:59pm 8

4 Homework Assignments 1. Conceptual Design 2. Transac)ons 3. Query execu)on and op)miza)on 4. XML Due: Wednesday s every other week in class: 12:30pm 9

Exams Midterm: Friday, April 30, 12:30 1:20 (in class: MGH241) Final: Thursday, June 10, 8:30 10:20 (MGH241) 10

Rest of Today s Lecture Overview of DBMS 11

Database What is a database? Give examples of databases 12

Database What is a database? A collec)on of files storing related data Give examples of databases Accounts database; payroll database; UW s students database; Amazon s products database; airline reserva)on database 13

Database Management System What is a DBMS? Give examples of DBMS 14

Database Management System What is a DBMS? A big C program wrifen by someone else that allows us to manage efficiently a large database and allows it to persist over long periods of ;me Give examples of DBMS DB2 (IBM), SQL Server (MS), Oracle, Sybase MySQL, Postgres, SQL for Nerds, Greenspun, hup://philip.greenspun.com/sql/ (Chap 1,2) 15

Market Shares From 2006 Gartner report: IBM: 21% market with $3.2BN in sales Oracle: 47% market with $7.1BN in sales Microsou: 17% market with $2.6BN in sales 16

An Example The Internet Movie Database hup://www.imdb.com En))es: Actors (800k), Movies (400k), Directors, Rela)onships: who played where, who directed what, 17

Tables Actor: id fname lname gender 195428 Tom Hanks M 645947 Amy Hanks F... Casts: pid mid 195428 337166... Movie: id Name year 337166 Toy Story 1995......... 18

SQL SELECT * FROM Actor 19

SQL SELECT count(*) FROM Actor This is an aggregate query 20

SQL SELECT * FROM Actor WHERE lname = Hanks This is a selection query 21

SQL SELECT * FROM Actor, Casts, Movie WHERE lname='hanks' and Actor.id = Casts.pid and Casts.mid=Movie.id and Movie.year=1995 This query has selections and joins 817k actors, 3.5M casts, 380k movies; How can it be so fast? 22

Op)miza)on and Query Execu)on Indexes: on Actor.lName, on Movie.year Query op)miza)on Access path selec)on Join order Sta)s)cs Mul)ple implementa)ons of joins 23

Recovery Transfer $100 from account #4662 to #7199: X = Read(Account_1); X.amount = X.amount - 100; Write(Account_1, X); Y = Read(Account_2); Y.amount = Y.amount + 100; Write(Account_2, Y); 24

Recovery Transfer $100 from account #4662 to #7199: X = Read(Account_1); X.amount = X.amount - 100; Write(Account_1, X); Y = Read(Account_2); Y.amount = Y.amount + 100; Write(Account_2, Y); What is the problem? CRASH! 25

Concurrency Control How to overdrau your account: User 1 User 2 X = Read(Account); if (X.amount > 100) { dispense_money( ); X.amount = X.amount 100; } else error( Insufficient funds ); X = Read(Account); if (X.amount > 100) { dispense_money( ); X.amount = X.amount 100; } else error( Insufficient funds ); What Dan can Suciu go -- 444 wrong Spring 2010? 26

Transac)ons Recovery Concurrency control ACID = Atomicity ( = recovery) Consistency Isola)on ( = concurrency control) Durability 27

Client/Server Database Architecture There is one single server that stores the database (called DBMS or RDBMS): Usually a beefed up system, e.g. IISQLSRV1 But can be your own desktop or a huge cluster running a parallel dbms Many clients running apps and connec)ng to DBMS E.g. Microsou s Management Studio Or psql (for postgres) More realis)cally some Java or C++ program The client talks to the server using JDBC protocol 28

Data Management Data Management is more than databases! A Data Management QUIZ: Alice sends Bob in random order all the numbers 1, 2, 3,, 100000000000000000000 She does not repeat any number But she misses exactly one Help Bob find out which one is missing! Auer you solve it, make it a bit harder: Alice misses exactly ten numbers 29

Accessing SQL Server SQL Server Management Studio Server Type = Database Engine Server Name = IISQLSRV Authen)ca)on = SQL Server Authen)ca)on Login = your UW email address (not the CSE email) Password = [in class] Change your password!! Then play with IMDB, start working on project 1 30