who is in charge n.
Download
Skip this Video
Download Presentation
Who is In Charge?

Loading in 2 Seconds...

play fullscreen
1 / 23

Who is In Charge? - PowerPoint PPT Presentation


  • 148 Views
  • Uploaded on

Who is In Charge?. Dr. Yan Huang NTDP F251,TTh 1:00-2:00pm Or by appointment TA: Jason Powell NTDP F236, TTh 12:00-2:00pm. Books. Text Book: Database System Concepts, 6 th edition, ISBN: 0073523321 Publisher: McGraw-Hill Science/Engineering/Math Supplement:

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Who is In Charge?' - latona


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
who is in charge
Who is In Charge?
  • Dr. Yan Huang
    • NTDP F251,TTh 1:00-2:00pm
    • Or by appointment
  • TA: Jason Powell
    • NTDP F236, TTh 12:00-2:00pm

Yan Huang - CSCE4350 - Introduction

books
Books
  • Text Book: Database System Concepts, 6th edition, ISBN: 0073523321 Publisher: McGraw-Hill Science/Engineering/Math
  • Supplement:
    • Elmasri, Navathe, Fundamentals Of Database Systems W/cd, 6rd, Addison Wesley, ISBN: 0136086209
    • Hector Garcia-Molina, J. Ullman, J. Widom, Database Systems - The Complete Book, Prentice Hall, ISBN 0-13-031995-3.

Yan Huang - CSCE4350 - Introduction

evaluation scheme
Evaluation Scheme
  • Exams 45%
  • Homework 30%
  • Project 20%
  • Class participation 5%
  • Pre-requisite: CSCE3110 (csci3400) data structures

Yan Huang - CSCE4350 - Introduction

topics to be covered
Topics to be Covered
  • Conceptual Database Design
  • Relational Data Model
  • SQL
  • Relation Database Design
  • Access Methods
  • Transactions
  • XML
  • Data Warehousing/Data Mining (if time allows)
  • Big Data Management

Yan Huang - CSCE4350 - Introduction

chapter 1 introduction
Chapter 1: Introduction
  • What is a DBMS?
  • A little history of DB
  • Major Components of a DBMS
  • Three Levels of Abstraction

Yan Huang - CSCE4350 - Introduction

what is a dbms
What is a DBMS?
  • DataBase Management System
  • A bunch of programs
  • Users use a language to ask questions about data that a DBMS manages
  • DBMS understands the language and give answers as fast as possible

Yan Huang - CSCE4350 - Introduction

history
History
  • 1960s: network model (CODASYL) and hierarchical (IMS).
  • 1970: E.F. Codd’s seminal paper on relational model for databases
  • 1970s:
    • Ingres: Developed at UCB. This ultimately led to Ingres Corp., Sybase, MS SQL Server, Britton-Lee, Wang's PACE.
    • System R: Developed at IBM San Jose and led to IBM's SQL/DS & DB2, Oracle, HP's Allbase, Tandem's Non-Stop SQL.
  • 1976: P. Chen proposed the Entity-Relationship (ER) model
  • 1980s: Commercialization of RDBMS, Oracle was the first
  • Early 1990s: OO databases
  • Mid-later 1990s: Web DB/data warehousing/data mining
    • asp, Front Page, Java Servlets, jsp, JDBC, Enterprise Java Beans, ColdFusion, Dream Weaver, Oracle Developer 2000/OLAP
  • Earlier 2000s: consolidation of vendors, IBM (bought Informix), Microsoft, and Oracle.
  • Today: Big data: HardoopDB, Hbase, NoSQL, MongoDB

Yan Huang - CSCE4350 - Introduction

slide8

Worldwide Relational Database Management Systems 2007 Vendor Shares Full Report

Yan Huang - CSCE4350 - Introduction

slide9

DBMS

Architecture

Yan Huang - CSCE4350 - Introduction

major components of a dbms
Major Components of a DBMS
  • Query processor/Queryoptimizer
  • Transaction manager
  • Security/authorization manager
  • Storage manager

Yan Huang - CSCE4350 - Introduction

query processor optimizer
Query Processor/Optimizer
  • Decompose user queries into primitives
  • Find the best way (IO efficient) to execute the query
  • Two kinds of queries:
    • DML: data manipulation language
      • Insert, delete, update, select
    • DDL: data definition language
      • Create/drop/alter a table/index/view

Yan Huang - CSCE4350 - Introduction

query languages
Query Languages
  • SQL: standard/declarative language
    • ISO SQL-86, SQL-89, SQL-92, SQL-99, SQL-2003, SQL-2008, SQL-2011
  • Example:
    • SELECT name, age
    • FROM student
    • WHERE gender = “female”
  • Supported by most DB vendors

Yan Huang - CSCE4350 - Introduction

query languages1
Query Languages
  • Relational algebra: formal, procedural language
  • Query by example
  • Domain relational calculus
  • Tuple relational calculus
  • Datalog

Yan Huang - CSCE4350 - Introduction

transaction manager
Transaction Manager
  • A transaction is unit of work either completed as a full or not at all – atomicity
  • Example transaction:
    • Begin transaction
    • A = A+10
    • B = B – 10
    • End transaction
  • Other than atomicity, concurrency control of transactions is also important

Yan Huang - CSCE4350 - Introduction

concurrency control
Concurrency Control
  • Informally, concurrency control means transactions executing currently should not produce results other than a serial execution of the same transactions
  • What will happen without concurrency control?
    • Partial work will be seen by others – dirty read
    • Your work may be mistakenly over written by others – dirty write
    • Example?

Yan Huang - CSCE4350 - Introduction

security authorization
Security/Authorization
  • Define user roles
    • Admin
    • User
  • Define what users can access which part of the database system:
    • Tables
    • Indices
    • Views

Yan Huang - CSCE4350 - Introduction

storage manager
Storage Manager
  • Manage how data are stored in physical space, e.g. disk
  • How to read/write data
  • We can also create indices on existing data
    • Storage of indices need to be managed as well

Yan Huang - CSCE4350 - Introduction

application architectures
Application Architectures

Examples of Web application servers are Netscape Application Server, BEA Weblogic Enterprise, Borland AppServer and IBM's WebSphere Application Server

  • Two-tier architecture: E.g. client programs using ODBC/JDBC to communicate with a database
  • Three-tier architecture: E.g. web-based applications, and applications built using “middleware”

Yan Huang - CSCE4350 - Introduction

benefits of dbmss compared to file systems
Benefits of DBMSs Compared to File systems
  • A unified database interface vs. customized programs to interact with data
  • Data integrity
  • Currency control
  • Specialized fast query answering system, e.g. indexing, query optimization
  • Example?

Yan Huang - CSCE4350 - Introduction

database examples
Database Examples
  • Human resource systems
  • Library systems
  • Airline reservation systems
  • Product catalogs
  • Banking systems

Yan Huang - CSCE4350 - Introduction

three levels of abstraction
Three Levels of Abstraction
  • Conceptual layer – things and their relationships
  • Logical layer – how things and their relationships are specified in a DBMS
  • Physical layer – how things and their relationships are stored in physical space, e.g. disks
  • The separation of these three layers allow the change of one or more layers without affecting the other layers

Yan Huang - CSCE4350 - Introduction

major database management systems
Major Database Management Systems
  • Oracle
  • Microsoft SQL-server
  • IBM DB2 + Informix
  • Sybase
  • MySQL
  • PostgreSQL
  • XML databases – native xml and relational database extensions to support XML
  • Most have object-relational database extensions
  • Also some main memory databases: timesTen (acquired by Oracle recently)

Yan Huang - CSCE4350 - Introduction

in this class we will
In This Class, We Will
  • Talk about query languages: relational algebra, SQL
  • A logical data layer: relational database
  • How to design a relational database
  • Basic concepts in object oriented and object relational databases (maybe)
  • XML
  • Access Control (indexing)
  • Transactions
  • Big data management basic concepts
  • Introduction to data warehousing/data mining if time permits

Yan Huang - CSCE4350 - Introduction