• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Ch1
 

Ch1

on

  • 257 views

 

Statistics

Views

Total Views
257
Views on SlideShare
257
Embed Views
0

Actions

Likes
0
Downloads
10
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Ch1 Ch1 Presentation Transcript

    • Chapter 1:  Introduction Database System Concepts, 5th Ed.   ©Silberschatz, Korth and Sudarshan See www.db­book.com for conditions on re­use 
    • Chapter 1:  Introduction s Purpose of Database Systems s View of Data s Database Languages s Relational Databases s Database Design s Object­based and semistructured databases s Data Storage and Querying s Transaction Management s Database Architecture s Database Users and Administrators s Overall Structure s History of Database SystemsDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Database Management System (DBMS) s DBMS contains information about a particular enterprise q Collection of interrelated data q Set of programs to access the data  q An environment that is both convenient and efficient to use s Database Applications: q Banking: all transactions q Airlines: reservations, schedules q Universities:  registration, grades q Sales: customers, products, purchases q Online retailers: order tracking, customized recommendations q Manufacturing: production, inventory, orders, supply chain q Human resources:  employee records, salaries, tax deductions s Databases touch all aspects of our livesDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Purpose of Database Systems s In the early days, database applications were built directly on top of  file systems s Drawbacks of using file systems to store data: q Data redundancy and inconsistency  Multiple file formats, duplication of information in different files q Difficulty in accessing data   Need to write a new program to carry out each new task q Data isolation — multiple files and formats q Integrity problems  Integrity constraints  (e.g. account balance > 0) become  “buried” in program code rather than being stated explicitly  Hard to add new constraints or change existing onesDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Purpose of Database Systems (Cont.) s Drawbacks of using file systems (cont.)  q Atomicity of updates  Failures may leave database in an inconsistent state with partial  updates carried out  Example: Transfer of funds from one account to another should  either complete or not happen at all q Concurrent access by multiple users  Concurrent accessed needed for performance  Uncontrolled concurrent accesses can lead to inconsistencies – Example: Two people reading a balance and updating it at the  same time q Security problems  Hard to provide user access to some, but not all, data s Database systems offer solutions to all the above problemsDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Levels of Abstraction s Physical level: describes how a record (e.g., customer) is stored. s Logical level: describes data stored in database, and the relationships  among the data. type customer = record customer_id : string;  customer_name : string; customer_street : string; customer_city : integer; end; s View level: application programs hide details of data types.  Views can  also hide information (such as an employee’s salary) for security  purposes. Database System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • View of Data An architecture for a database system Database System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Instances and Schemas s Similar to types and variables in programming languages s Schema – the logical structure of the database  q Example: The database consists of information about a set of customers and  accounts and the relationship between them) q Analogous to type information of a variable in a program q Physical schema: database design at the physical level q Logical schema: database design at the logical level s Instance – the actual content of the database at a particular point in time  q Analogous to the value of a variable s Physical Data Independence – the ability to modify the physical schema without  changing the logical schema q Applications depend on the logical schema q In general, the interfaces between the various levels and components should be  well defined so that changes in some parts do not seriously influence others.Database System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Data Models s A collection of tools for describing  q Data  q Data relationships q Data semantics q Data constraints s Relational model s Entity­Relationship data model (mainly for database design)  s Object­based data models (Object­oriented and Object­relational) s Semistructured data model  (XML) s Other older models: q Network model   q Hierarchical modelDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Data Manipulation Language (DML) s Language for accessing and manipulating the data organized by the  appropriate data model q DML also known as query language s Two classes of languages  q Procedural – user specifies what data is required and how to get  those data  q Declarative (nonprocedural) – user specifies what data is  required without specifying how to get those data s SQL is the most widely used query languageDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Data Definition Language (DDL) s Specification notation for defining the database schema Example: create table account (                              account­number    char(10),                              balance                 integer) s DDL compiler generates a set of tables stored in a data dictionary s Data dictionary contains metadata (i.e., data about data) q Database schema  q Data storage and definition language   Specifies the storage structure and access methods used q Integrity constraints  Domain constraints  Referential integrity (references constraint in SQL)  Assertions q AuthorizationDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Relational Model Attributes s Example of tabular data in the relational modelDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • A Sample Relational DatabaseDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • SQL s SQL: widely used non­procedural language q Example: Find the name of the customer with customer­id 192­83­7465 select customer.customer_name from customer where customer.customer_id = ‘192­83­7465’ q Example: Find the balances of all accounts held by the customer with  customer­id 192­83­7465 select account.balance from      depositor, account where   depositor.customer_id = ‘192­83­7465’ and depositor.account_number = account.account_number s Application programs generally access databases through one of q Language extensions to allow embedded SQL q Application program interface (e.g., ODBC/JDBC) which allow SQL  queries to be sent to a databaseDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Database Design The process of designing the general structure of the database: s Logical Design –  Deciding on the database schema. Database design  requires that we find a “good” collection of relation schemas. q Business decision – What attributes should we record in the  database? q Computer Science  decision –  What relation schemas should we  have and how should the attributes be distributed among the various  relation schemas? s Physical Design – Deciding on the physical layout of the database                       Database System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • The Entity­Relationship Model s Models an enterprise as a collection of entities and relationships q Entity: a “thing” or “object” in the enterprise that is distinguishable  from other objects  Described by a set of attributes q Relationship: an association among several entities s Represented diagrammatically by an entity­relationship diagram:Database System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Object­Relational Data Models s Extend the relational data model by including object orientation and  constructs to deal with added data types. s Allow attributes of tuples to have complex types, including non­atomic  values such as nested relations. s Preserve relational foundations, in particular the declarative access to  data, while extending modeling power. s Provide upward compatibility with existing relational languages.Database System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • XML:  Extensible Markup Language s Defined by the WWW Consortium (W3C) s Originally intended as a document markup language not a  database language s The ability to specify new tags, and to create nested tag structures  made XML a great way to exchange data, not just documents s XML has become the basis for all new generation data interchange  formats. s A wide variety of tools is available for parsing, browsing and  querying XML documents/dataDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Storage Management s Storage manager is a program module that provides the interface  between the low­level data stored in the database and the application  programs and queries submitted to the system. s The storage manager is responsible to the following tasks:  q Interaction with the file manager  q Efficient storing, retrieving and updating of data s Issues: q Storage access q File organization q Indexing and hashingDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Query Processing 1. Parsing and translation 2. Optimization 3. EvaluationDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Query Processing (Cont.) s Alternative ways of evaluating a given query q Equivalent expressions q Different algorithms for each operation s Cost difference between a good and a bad way of evaluating a query can  be enormous s Need to estimate the cost of operations q Depends critically on statistical information about relations which the  database must maintain q Need to estimate statistics for intermediate results to compute cost of  complex expressionsDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Transaction Management s A transaction is a collection of operations that performs a single  logical function in a database application s Transaction­management component ensures that the database  remains in a consistent (correct) state despite system failures (e.g.,  power failures and operating system crashes) and transaction failures. s Concurrency­control manager controls the interaction among the  concurrent transactions, to ensure the consistency of the database. Database System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Database Architecture The architecture of a database systems is greatly influenced by  the underlying computer system on which the database is running: s Centralized s Client­server s Parallel (multi­processor) s Distributed     Database System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Database Users Users are differentiated by the way they expect to interact with  the system s Application programmers – interact with system through DML calls s Sophisticated users – form requests in a database query language s Specialized users – write specialized database applications that do  not fit into the traditional data processing framework s Naïve users – invoke one of the permanent application programs that  have been written previously q Examples, people accessing database over the web, bank tellers,  clerical staffDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Database Administrator s Coordinates all the activities of the database system; the  database administrator has a good understanding of the  enterprise’s information resources and needs. s Database administrators duties include: q Schema definition q Storage structure and access method definition q Schema and physical organization modification q Granting user authority to access the database q Specifying integrity constraints q Acting as liaison with users q Monitoring performance and responding to changes in  requirementsDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Overall System Structure Database System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • History of Database Systems s 1950s and early 1960s: q Data processing using magnetic tapes for storage  Tapes provide only sequential access q Punched cards for input s Late 1960s and 1970s: q Hard disks allow direct access to data q Network and hierarchical data models in widespread use q Ted Codd defines the relational data model  Would win the ACM Turing Award for this work  IBM Research begins System R prototype  UC Berkeley begins Ingres prototype q High­performance (for the era) transaction processingDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • History (cont.) s 1980s: q Research relational prototypes evolve into commercial systems  SQL becomes industrial standard q Parallel and distributed database systems q Object­oriented database systems s 1990s: q Large decision support and data­mining applications q Large multi­terabyte data warehouses q Emergence of Web commerce s 2000s: q XML and XQuery standards q Automated database administrationDatabase System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • End of Chapter 1Database System Concepts, 5th Ed.   ©Silberschatz, Korth and SudarshanSee www.db­book.com for conditions on re­use 
    • Figure 1.4Database System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan
    • Figure 1.7Database System Concepts ­ 5th Edition, May 23,  2005 1.<number> ©Silberschatz, Korth and Sudarshan