CS 405G Introduction to Database Systems

Slides:



Advertisements
Similar presentations
1 Introduction to Database Systems CSE444 Instructor: Scott Vandenberg University of Washington Winter 2000.
Advertisements

Database Management Systems 1 Ramakrishnan & Gehrke Introduction to Database Systems Chapter 1 Instructor: Mirsad Hadzikadic.
Database: A collection of related data [Elmasri]. A database represents some aspect of real world called “miniworld” [Elmasri] or “enterprise” [Ramakrishnan].
CS186 - Introduction to Database Systems Spring Semester 2006 Prof. Michael Franklin “Knowledge is of two kinds: we know a subject ourselves, or we know.
1 CENG 302 Introduction to Database Management Systems Nihan Kesim Çiçekli URL:
Databases and Database Management System. 2 Goals comprehensive introduction to –the design of databases –database transaction processing –the use of.
CS 405G: Introduction to Database Systems Instructor: Jinze Liu Fall 2009.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 1- 1.
 MODERN DATABASE MANAGEMENT SYSTEMS OVERVIEW BY ENGINEER BILAL AHMAD
Introduction and Conceptual Modeling
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 1- 1 Outline Types of Databases and Database Applications Basic Definitions Typical DBMS Functionality.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 1- 1 Chapter 1 - Introduction: Databases and Database Users - Outline Types of Databases and.
Course Introduction Introduction to Databases Instructor: Joe Bockhorst University of Wisconsin - Milwaukee.
COP Introduction to Database Systems Prof. Feifei Li.
CS6530 Graduate-level Database Systems Prof. Feifei Li.
 DATABASE DATABASE  DATABASE ENVIRONMENT DATABASE ENVIRONMENT  WHY STUDY DATABASE WHY STUDY DATABASE  DBMS & ITS FUNCTIONS DBMS & ITS FUNCTIONS 
Introduction: Databases and Database Users
Database Management Systems 1 Ramakrishnan & Gehrke Introduction to Database Systems Chpt 1 Instructor: Xintao Wu.
1Mr.Mohammed Abu Roqyah. Introduction and Conceptual Modeling 2Mr.Mohammed Abu Roqyah.
Database Management Systems 1 Ramakrishnan & Gehrke Introduction to Database Systems Chpt 1 Instructor: Weichao Wang.
CS461: Principles and Internals of Database Systems Instructor: Ying Cai Department of Computer Science Iowa State University Office:
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 1- 1.
INFS614, Dr. Brodsky, GMU1 Database Management Systems INFS 614 Instructor: Professor Alex Brodsky
CS 505: Intermediate Topics in Database Systems Instructor: Jinze Liu Fall 2008.
Chapter(1) Introduction and conceptual modeling. Basic definitions Data : know facts that can be recorded and have an implicit. Database: a collection.
CIS/SUSL1 Fundamentals of DBMS S.V. Priyan Head/Department of Computing & Information Systems.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1 Databases and Database Users.
CS 405G: Introduction to Database Systems Lecture 1: Introduction.
Fall CSE330/CIS550: Introduction to Database Management Systems Prof. Susan Davidson Office: 278 Moore Office hours: TTh
1 Geog 357: Data models and DBMS. Geographic Decision Making.
Database Management Systems.  Instructor: Yrd. Doç. Dr. Cengiz Örencik   Course material.
CS 405G: Introduction to Database Systems Lecture 1: Introduction.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Chapter 1 Introduction: Databases and Database Users.
CS 405G: Introduction to Database Systems Lecture 1: Introduction.
Copyright © 2004 Pearson Education, Inc. Chapter 1 Introduction and Conceptual Modeling.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 Database Management Systems Chapter 1.
Introduction: Databases and Database Systems Lecture # 1 June 19,2012 National University of Computer and Emerging Sciences.
© 2017 by McGraw-Hill Education. This proprietary material solely for authorized instructor use. Not authorized for sale or distribution in any manner.
Management Information Systems by Prof. Park Kyung-Hye Chapter 7 (8th Week) Databases and Data Warehouses 07.
10/3/2017.
Chapter 1 Database and Database Users
Introduction: Databases and Database Users
CS4222 Principles of Database System
Introduction To DBMS.
Introduction: Databases and Database Users
Fundamentals of Information Systems, Sixth Edition
Database Management Systems
Outline Types of Databases and Database Applications Basic Definitions
Database and Database Users
Instructor: Elke Rundensteiner
Introduction: Databases and Database Users
Fundamentals of Information Systems, Sixth Edition
7/4/2018.
Fundamentals of Information Systems
9/22/2018.
Database Management System (DBMS)
11/14/2018.
EECS 647: Introduction to Database Systems
1/2/2019.
Database Management Systems CSE594
CS186: Introduction to Database Systems
CS 405G: Introduction to Database Systems
Terms: Data: Database: Database Management System: INTRODUCTION
Database Dr. Roueida Mohammed.
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.
Data Independence Applications insulated from how data is structured and stored. Logical data independence: Protection from changes in logical structure.
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.
Is the WWW a DBMS? = Fairly sophisticated search available
Database management systems
Presentation transcript:

CS 405G Introduction to Database Systems Jinze Liu Fall 2018 CS 405G Introduction to Database Systems

Jinze Liu @ University of Kentucky Topics Course introduction and syllabus What is a database? What is a database management system? Why take a database course? How to take the class? Preview of class contents 5/13/2019 Jinze Liu @ University of Kentucky

Jinze Liu @ University of Kentucky Who am I? Instructor Jinze Liu Associate Professor @ CS.UKY Research area: Database, Data mining and Bioinformatics Email: liuj@cs.uky.edu 5/13/2019 Jinze Liu @ University of Kentucky

About the course: Information Canvas will be used for the class Notes Assignments Forum Textbook Fundamentals of database systems Ramez Elmasri and Shamkant B. Navathe Jinze’s Office Hours: 235 Hardymon building, Friday 10:00am Email: please include CS405G in the subject line for fast response Class mailing list Will send emails to everyone once set up. Will be used for announcement/clarification of assignments/answering questions 5/13/2019

About the Course – Workload 6 homework assignments Including programming assignment Building blocks for your project 1 Programming project Exams 1 Midterm & 1 Final Cheating policy: zero tolerance We have the technology… 5/13/2019

About the course: Grading Weights 6 Homework assignments 25% Project 20% Midterm exam 25% Final exam 25% Quizzes 5% More information is in the syllabus Final grade Canvas will be used as assignment and project submission. Academic mis-conduct You are expected to do the assignment independently Discussions if allowed should be acknowledged 5/13/2019

About the course: Workload Programming projects have a practical, hands-on focus: A relational DBMS for a particular application To be named (let me know your interest!) Projects are to be done in teams of 2 Pick your partner ASAP! 5/13/2019

Jinze Liu @ University of Kentucky Database Systems? Name a few! 5/13/2019 Jinze Liu @ University of Kentucky

Database Systems: Bank Systems 5/13/2019 Jinze Liu @ University of Kentucky

Database Systems - Ecommerce 5/13/2019 Jinze Liu @ University of Kentucky

Database Systems: Clinical Databases 5/13/2019 Jinze Liu @ University of Kentucky

Database Systems: Genome Bank 5/13/2019 Jinze Liu @ University of Kentucky

Jinze Liu @ University of Kentucky What is a Database? A database is an integrated collection of data. Data is a group of facts that can be recorded. Typically a database is used to model a real-world “enterprise” (or a miniworld) Entities (e.g., basketball teams, games) Relationships (e.g. UK’s basketball team beat <you name it> last week) Might surprise you how flexible this is Web search: Entities: words, documents Relationships: word in document, document links to document. P2P filesharing: Entities: words, filenames, hosts Relationships: word in filename, file available at host 5/13/2019 Jinze Liu @ University of Kentucky

What is a Database Management System? A Database Management System (DBMS) is a collection of programs that enable users to create and maintain databases store, manage, and access data in a databases. Typically this term is used narrowly Relational databases with transactions E.g. Oracle, DB2, SQL Server Mostly because they predate other large repositories Also because of technical richness When we say DBMS in this class we will usually follow this convention But keep an open mind about applying the ideas! 5/13/2019 Jinze Liu @ University of Kentucky

Main Characteristics of Databases Self-describing nature of a database system A DBMS catalog stores the description of the database. The description is called meta-data. Insulation between programs and data Allows changing data storage structures and operations without having to change the DBMS access Data Abstraction Use data model to hide storage details and present the users with a conceptual view of the database Support of multiple views of the data Each user may see a different view of the database, which describes only the data of interest to that user. Sharing of data and multi-user transaction processing 5/13/2019 Jinze Liu @ University of Kentucky

Databases make these folks happy ... End users in many fields Business, education, science, … DB application programmers Build data entry & analysis tools on top of DBMSs Build web services that run off DBMSs Database administrators (DBAs) Design logical/physical schemas Handle security and authorization Data availability, crash recovery Database tuning as needs evolve DBMS vendors, programmers Oracle, IBM, MS … …must understand how a DBMS works 5/13/2019 Jinze Liu @ University of Kentucky 21

Jinze Liu @ University of Kentucky What: Is the WWW a DBMS? Fairly sophisticated search available Crawler indexes pages on the web Keyword-based search for pages But, currently data is mostly unstructured and untyped search only: can’t modify the data can’t get summaries, complex combinations of data few guarantees provided for freshness of data, consistency across data items, fault tolerance, … web sites typically have a (relational) DBMS in the background to provide these functions. 5/13/2019 Jinze Liu @ University of Kentucky

Jinze Liu @ University of Kentucky What: Is the WWW a DBMS? The picture is changing quickly Information Extraction to get structure data from unstructured data New standards e.g., XML, Semantic Web can help data modeling 5/13/2019 Jinze Liu @ University of Kentucky

What: Is a File System a DBMS? Thought Experiment 1: You and your project partner are editing the same file. You both save it at the same time. Whose changes survive? Q: How do you write programs over a subsystem when it promises you only “???” ? A: Very, very carefully!! A) Yours B) Partner’s C) Both D) Neither E) ??? Thought Experiment 2: You’re updating a file. The power goes out. Which changes survive? A) All B) None C) All Since Last Save D) ??? 5/13/2019 Jinze Liu @ University of Kentucky

OS Support for Data Management Data can be stored in RAM This is what every programming language offers! RAM is fast, and random access Isn’t this heaven? Every OS includes a File System manages files on a magnetic disk allows open, read, seek, close on a file allows protections to be set on a file drawbacks relative to RAM? 5/13/2019 Jinze Liu @ University of Kentucky

Database Management Systems What more could we want than a file system? Simple, efficient ad hoc1 queries concurrency control recovery benefits of good data modeling S.M.O.P.2? Not really… as we’ll see this semester in fact, the OS often gets in the way! 1ad hoc: formed or used for specific or immediate problems or needs 2SMOP: Small Matter Of Programming 5/13/2019 Jinze Liu @ University of Kentucky

Current Commercial Outlook A major part of the software industry: Oracle, IBM, Microsoft also Sybase, Informix (now IBM), Teradata smaller players: java-based dbms, devices, OO, … Lots of related industries data warehouse, document management, storage, backup, reporting, business intelligence, ERP, CRM, app integration Traditional Relational DBMS products dominant and evolving adapted for extensibility (user-defined types), native XML support. Microsoft merger of file system/DB…? 5/13/2019 Jinze Liu @ University of Kentucky

Advantages of a DBMS: a short list Controlling redundancy Restrict unauthorized access Providing persistent storage for program objects Providing storage structure for efficient query processing Providing backup and crash recovery …. And many many others that are going to be explored in this class 5/13/2019 Jinze Liu @ University of Kentucky

What database systems will we cover? We will try to be broad and touch upon Relational DBMS (e.g. Oracle, SQL Server, DB2, Postgres) “Semi-structured” DB systems (e.g. XML repositories like Xindice) Data mining: transfer data into knowledge! Starting point We assume you have used web search engines We assume you don’t know relational databases Yet they pioneered many of the key ideas So focus will be on relational DBMSs With frequent side-notes on search engines, XML issues 5/13/2019 Jinze Liu @ University of Kentucky

Jinze Liu @ University of Kentucky Why take this class? Database systems are at the core of CS They are incredibly important to society The topic is intellectually rich It isn’t that much work Looks good on your resume Let’s spend a little time on each of these 5/13/2019 Jinze Liu @ University of Kentucky

Jinze Liu @ University of Kentucky Why take this class? A. Database systems are the core of CS Shift from computation to information True in corporate computing for years Web, p2p made this clear for personal computing Increasingly true of scientific computing Need for DB technology has exploded in the last years Corporate: retail swipe/clickstreams, “customer relationship mgmt”, “supply chain mgmt”, “data warehouses”, etc. Web:not just “documents”. Search engines, e-commerce, blogs, wikis, other “web services”. Scientific: digital libraries, genomics, satellite imagery, physical sensors, simulation data Personal: Music, photo, & video libraries. Email archives. File contents (“desktop search”). 5/13/2019 Jinze Liu @ University of Kentucky

Jinze Liu @ University of Kentucky Why take this class? B. DBs are incredibly important to society “Knowledge is power.” -- Sir Francis Bacon “With great power comes great responsibility.” -- SpiderMan’s Uncle Ben Policy-makers should understand technological possibilities. Informed Technologists needed in public discourse on usage. 5/13/2019 Jinze Liu @ University of Kentucky

Jinze Liu @ University of Kentucky Why take this class? C. The topic is intellectually rich. representing information data modeling languages and systems for querying data complex queries & query semantics* over massive data sets concurrency control for data manipulation controlling concurrent access ensuring transactional semantics reliable data storage maintain data semantics even if you pull the plug data mining Let your data speak * semantics: the meaning or relationship of meanings of a sign or set of signs 5/13/2019 Jinze Liu @ University of Kentucky

Jinze Liu @ University of Kentucky Why take this class? D. It isn’t that much work. Bad news: It is a lot of work. You may need to learn a language you are not familiar with like PHP for the project Besides SQL which is considered the most fun part, you will also need to learn the theoretical side of relational database Good news: the course is front loaded Most of the hard work is in the first half of the semester Load balanced with most other classes 5/13/2019 Jinze Liu @ University of Kentucky

Jinze Liu @ University of Kentucky Why take this class? E. Looks good on my resume. Yes, but why? This is not a course for: Oracle administrators IBM DB2 engine developers Though it’s useful for both! It is a course for well-educated computer scientists Database system concepts and techniques increasingly used “outside the box” Ask your friends at Microsoft, Yahoo!, Google, Apple, etc. Actually, they may or may not realize it! A rich understanding of these issues is a basic and (un?)fortunately unusual skill. 5/13/2019 Jinze Liu @ University of Kentucky