CMPSCI445: Information Systems

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

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

745: Advanced Database Systems

CSE 544 Principles of Database Management Systems

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

CMPSCI 645 Database Design & Implementation

CS 564: DATABASE MANAGEMENT SYSTEMS. Spring 2018

Course and Contact Information. Course Description. Course Objectives

Course and Contact Information. Course Description. Course Objectives

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

Database Management Systems CS Spring 2017

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

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

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

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

INF 315E Introduction to Databases School of Information Fall 2015

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

Database Management Systems MIT Introduction By S. Sabraz Nawaz

EECS 647: Introduction to Database Systems

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

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

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

CSE 344 JANUARY 3 RD - INTRODUCTION

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

Introduction to CS 4604

Course and Contact Information. Catalog Description. Course Objectives

Database Systems Management

Introduction to Data Management CSE 344. Lecture 1: Introduction

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

Database Systems (INFR10070) Dr Paolo Guagliardo. University of Edinburgh. Fall 2016

San José State University Department of Computer Science CS-174, Server-side Web Programming, Section 2, Spring 2018

Announcements. PS 3 is out (see the usual place on the course web) Be sure to read my notes carefully Also read. Take a break around 10:15am

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

CAS CS 460/660 Introduction to Database Systems. Fall

CS425 Fall 2016 Boris Glavic Chapter 1: Introduction

LIS 2680: Database Design and Applications

CMSC Introduction to Database Systems

Introduction to Data Management. Lecture #1 (Course Trailer )

Introduction to Database Systems CSE 444. Lecture 1 Introduction

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

CPS352 Database Systems Syllabus Fall 2012

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

Introduction to Information Systems SSC, Semester 6

Introduction to Databases

Introduction to Data Management. Lecture #1 (The Course Trailer )

CSE 336. Introduction to Programming. for Electronic Commerce. Why You Need CSE336

COURSE OVERVIEW THE RELATIONAL MODEL. CS121: Introduction to Relational Database Systems Fall 2016 Lecture 1

Goals for Today. CS 133: Databases. Final Exam: Logistics. Why Use a DBMS? Brief overview of course. Course evaluations

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

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

CPS352 - DATABASE SYSTEMS. Professor: Russell C. Bjork Spring semester, Office: KOSC 242 x4377

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

Database Concepts. CS 377: Database Systems

Data! CS 133: Databases. Goals for Today. So, what is a database? What is a database anyway? From the textbook:

CS564: Database Management Systems. Lecture 1: Course Overview. Acks: Chris Ré 1

COWLEY COLLEGE & Area Vocational Technical School

CPS352 - DATABASE SYSTEMS. Professor: Russell C. Bjork Spring semester, Office: KOSC 242 x4377

Introduction to Databases Fall-Winter 2010/11. Syllabus

CS 245: Principles of Data-Intensive Systems. Instructor: Matei Zaharia cs245.stanford.edu

Modern Database Systems CS-E4610

COURSE OVERVIEW THE RELATIONAL MODEL. CS121: Relational Databases Fall 2017 Lecture 1

PELLISSIPPI STATE COMMUNITY COLLEGE MASTER SYLLABUS ADVANCED DATABASE MANAGEMENT SYSTEMS CSIT 2550

COURSE OUTLINE. IST 253 Database Concept 3 Course Number Course Title Credits

IS 331-Fall 2017 Database Design, Management and Applications

CS 146 Database Systems

INFS 2150 (Section A) Fall 2018

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

IS Spring 2018 Database Design, Management and Applications

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

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

Database Management Systems MIT Lesson 01 - Introduction By S. Sabraz Nawaz

CMPUT 291 File and Database Management Systems

MIT Database Management Systems Lesson 01: Introduction

15-415: Database Applications School of Computer Science Carnegie Mellon University, Qatar Spring 2014

Introduction to Data Management. Lecture #1 (Course Trailer ) Instructor: Chen Li

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

Syllabus Course Number: CS 412 Course Title: Web and Database Programming

Network Security

CIS 330: Web-driven Web Applications. Lecture 2: Introduction to ER Modeling

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

CIS 3308 Web Application Programming Syllabus

CSC 407 Database System I COURSE PARTICULARS COURSE INSTRUCTORS COURSE DESCRIPTION

DATABASE MANAGEMENT SYSTEMS. UNIT I Introduction to Database Systems

Introduction. Example Databases

CS157a Fall 2018 Sec3 Home Page/Syllabus

CS 4230 Java Application Development Syllabus

CS 241 Data Organization using C

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

Why are you here? Introduction. Course roadmap. Course goals. What do you want from a DBMS? What is a database system? Aren t databases just

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

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

Note that your facilitator may provide additional required readings.

B.C.A DATA BASE MANAGEMENT SYSTEM MODULE SPECIFICATION SHEET. Course Outline

COS 333: Advanced Programming Techniques. Robert M. Dondero, Ph.D. Princeton University

CSCI 6312 Advanced Internet Programming

Introduction to Data Management. Lecture #2 Intro II & Data Models I

Specific Objectives Contents Teaching Hours 4 the basic concepts 1.1 Concepts of Relational Databases

Introduction to Databases

CIS 408 Internet Computing (3-0-3)

BIS Database Management Systems.

Transcription:

CMPSCI445: Information Systems Yanlei Diao and Haopeng Zhang University of Massachusetts Amherst

Course Web Site http://avid.cs.umass.edu/courses/445/s2015/ or http://www.cs.umass.edu/~yanlei à Teaching à 445, Spring 2015

445 Staff and Mailing Lists Instructor: Yanlei Diao Email: yanlei at cs.umass.edu Web: http://www.cs.umass.edu/~yanlei/ TA: Haopeng Zhang haopeng at cs.umass.edu Instructor + TA: Email: cs445-help at edlab-mail.cs.umass.edu Information also available on the home page

Textbook Database Management Systems 3 rd Edition Ramakrishnan and Gehrke Bookstore: - Buy new: $215.50; Buy used: $161.75 Amazon: - Buy new: $147.09 (hardcover); paperback, Kindle, rent options are also available Lecture notes will be posted on the schedule page before class.

Outline Overview of databases and DBMS s Course topics and requirements

Databases and DBMS s A database is a large, integrated collection of data A database management system (DBMS) is a software system designed to store and manage a large amount of data Declarative interface to define data stored, add data, update data, and query data Efficient querying Concurrent users Reliable storage and crash recovery Access control

Commercial DBMS s INGRES Informix Sybase Postgres MS SQL Server System R IBM DB2 Oracle MySQL timeline Material in this slide based on wikipedia

Earlier Database Applications OnLine Transaction Processing (OLTP) Data with many small items, many queries, many updates E.g., banking, airline reservations E.g., university databases

Recent Database Applications OnLine Analytical Processing (OLAP), also known as Data Warehousing Large amounts of data over years, complex queries, designed for analysis and reporting Sales data analysis, e.g., Walmart, Target, Fraud analysis, e.g., credit card use, insurance

More Recent DB Applications Electronic commerce E.g., amazon.com, ebay.com Integrating thousands of catalogs and orders Social networking E.g., facebook.com, myspace.com, with 100 s million users or more at a popular site Supporting many users, their profiles, communications Real-time analysis of user behaviors

How does one build a database?

Example: The Internet Shop* DBDudes Inc.: a well-known database consulting firm Barns and Nobble (B&N): a large bookstore specializing in books on horse racing B&N decides to go online but needs help Step 0: DBDudes makes B&N agree to pay steep fees and schedule a lunch meeting for requirements analysis * The example and all related material was taken from Database Management Systems Edition 3.

Step 1: Requirements Analysis I d like my customers to be able to browse my catalog of books and place orders online. Books: For each book, B&N s catalog contains its ISBN number, title, author, price, year of publication, Customers: Most customers are regulars with names and addresses registered with B&N. New customers must first call and establish an account. On the new website: Customers identify themselves before browsing and ordering. Each order contains the ISBN of a book and a quantity. Shipping: For each order, B&N ships all copies of a book together once they become available.

Step 2: Conceptual Design A high level description of the data in terms of the Entity- Relationship (ER) model. author qty_in_stock order_date title price qty isbn Year ordernum cname cardnum cid address ship_date Books Orders Customers Design review: What if a customer places two orders of the same book in one day? Modification: add ordernum to Orders.

Step 3: Logical Design Mapping the ER diagram to the relational model CREATE TABLE Books (isbn CHAR(10), title CHAR(80), author CHAR(80), qty_in_stock INTEGER, price REAL, year INTEGER, PRIMARY KEY(isbn)) CREATE TABLE Customers (cid INTEGER, cname CHAR(80), address CHAR(200), PRIMARY KEY(cid)) Access control: use views to restrict the access of certain employees to customer sensitive information CREATE TABLE Orders (ordernum INTEGER, isbn CHAR(10), cid INTEGER, cardnum CHAR(16), qty INTEGER, order_date DATE, ship_date DATE, PRIMARY KEY(ordernum, isbn), FOREIGN KEY (isbn) CREATE VIEW OrderInfo REFERENCES Books, (isbn, cid, qty, order_date, ship_date) FOREIGN KEY (cid) AS SELECT O.isbn, O.cid, O.qty, REFERENCES Customers) O.order_date, O.ship_date FROM Orders O

Step 4: Schema Refinement Orders ordernum isbn cid cardnum qty order_date ship_date 120 0-07-11 123 40241160 2 Jan 3, 2006 Jan 6, 2006 120 1-12-23 123 40241160 1 Jan 3, 2006 Jan 11, 2006 120 0-07-24 123 40241160 3 Jan 3, 2006 Jan 26, 2006 Orders Redundant Storage! Orderlists ordernum cid cardnum order_date ordernum isbn qty ship_date 120 123 40241160 Jan 3, 2006 120 0-07-11 2 Jan 6, 2006 120 1-12-23 1 Jan 11, 2006 120 0-07-24 3 Jan 26, 2006

Step 5: Internet Application Development Presentation tier Client Program (Web Browser) HTML, Javascript, Cookies B&N Client: User input Display of output Application logic tier Application Server (Apache Tomcat ) PHP, JSP, Servlets, XSLT B&N Business logic: Home page Login page Search page Cart page Confirm page Data management tier Database System (MySQL, DB2 ) Relational, XML B&N Data: Books Customers (User login) Orders Orderlists

An Example Internet Store

Example SQL Queries Search Page SELECT isbn, title, author, price FROM Books WHERE author = '<SearchString>' ORDER BY title Login Page SELECT cid, username, password FROM Customers WHERE username = '<SpecifiedUsername>'

Step 6: Physical Design Auxiliary data structures, indexes, to speed up searches, e.g., B+tree, R-tree, hash index Books isbn 0-07-11 1-12-23 0-07-24 title Legacies of the Turf Seattle Slew Spectacular Bid author Edward L. Bowen Dan Mearns Timothy Capps price 29.95 24.95 16.95 year 2003 2000 2001 qty 10 0 3 Hash Index on Books.author H1 author 1 2 3 N-1

What is inside DBMS?

DBMS Architecture Query Parser Query Rewriter DBMS Query Optimizer Query Processor Query Executor Lock Manager Access Methods Buffer Manager Disk Space Manager DB Log Manager Transactional Storage Manager Disk Manager

Course Topics Fundamentals Data modeling Relational design Query languages (relational algebra + SQL) Database implementations Storage and indexing Query processing and optimization Transaction management Advanced technologies Web application development (Php + MySQL) Big data analytics (if time permits)

Prerequisites Prerequisites: CMPSCI 220/230: Computer architecture & programing CMPSCI 311: Introduction to Algorithms Or, upon consent of the instructor Data structures and algorithms Sufficient programming experience

Grading Homework: 30% Midterm: 20% Final: 25% Course Project: 20% Attendance & Participation: 5%

Homework: 30% 5 assignments throughout the semester Written problem sets Programming exercises with query languages including SQL Posted on the assignments page Dates that each assignment: see the schedule page Submission via Moodle before 11 am on due date Policy on late submissions: Illness with a doctor s note, or with the instructor s content before the due date. No exception!

Project: 20% General theme: build a web application using PhP + MySQL backend Groups of 3 Project work will include: Schema design DB implementation Web site design Multiple milestones & deliverables See the schedule page See the projects page for details Submission: via Moodle, before 11 am on due date

Exams Midterm (20%) In-class, closed-book exam At the beginning of the 9 th week Final (25%) Closed-book exam Waiting to be scheduled in the final exam period

Attendance & Participation (5%) Attend every class Ask questions, contribute to answers Participate in in-class exercises and discussions

Academic Honesty All submitted work must be your own! Although students are encouraged to study together, each student is expected to produce his or her own solutions to the homework problems. Copying or using sections of someone else s program or assignment (even if it has been modified by you), or copying a solution from an external source, is not acceptable. The University guidelines for academic misconduct: http:// www.umass.edu/dean_students/codeofconduct/acadhonesty/ The staff of CS 445 will be vigorous in enforcing them.