1 / 42

Database Environment

Database Environment. Chapter 2 AIT632 Sungchul Hong. Last Class. Database related definitions Traditional file system Database approach Components of the DBMS environment Hardware, software, data, procedure, people Roles in the database environment

cato
Télécharger la présentation

Database Environment

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Database Environment Chapter 2 AIT632 Sungchul Hong

  2. Last Class • Database related definitions • Traditional file system • Database approach • Components of the DBMS environment • Hardware, software, data, procedure, people • Roles in the database environment • DA, DBA, DB designer, application developer, end users • Advantages & disadvantages of DBMS • History

  3. This Class • Three level ANSI-SPARC Architecture • External level, conceptual level, internal level • Schemas • Mapping • DDL, DML • Data modeling and conceptual modeling • Functions of DBMS • Components of a DBMS • Multi-User DBMS architecture

  4. The Three-Level ANSI-SPARC Architecture • External • Conceptual • Internal • American National Standard • Institute • Standards Planning and • Requirements Committee

  5. Separation of Logical and Physical Presentation • Each user should be able to access the same data, but have a different customized view of the data. • Users should not have to deal directly with physical database storage details. • DBA should be able to change the database storage structures without affecting the users’ views. • The internal structure of the database should be unaffected by changes to the physical aspects of storage. • The DBA should be able to change the conceptual structure of the database without affecting all users.

  6. External Level • Users’ view of the database. This level describes that part of the database that is relevant to each user. • External views • Different views may have different representations of the same data.

  7. What will be happen if we have two base tables in stead of views?

  8. Conceptual Level • The community view of the database. This level describes what data is stored in the database and the relationships among the data. • Logical structure of entire database • All entities, their attributes, and their relationships • The constraints on the data • Semantic information about the data • Security and integrity information

  9. Internal Level • The physical representation of the database on the computer. This level describes how the data is stored in the database. • Storage space allocation for data and indexes. • Record descriptions for storage. • Record placement • Data compression and data encryption techniques.

  10. Schemas • The overall description of the database • Database schema • External schemas (subschema) • Different views of the data • Conceptual schema • Describes all the entities, attributes,and relationships together with integrity constraints. • Internal schema • Complete description of the internal model, containing the definitions of stored records, the methods of representation, the data fields, and the indexes and hashing schemes used.

  11. Mappings • The DBMS is responsible for mapping between these three types of schema. • Check consistency. • Conceptual/internal mapping • Find the actual record of a logical record • External/conceptual mapping • Map names in the user’s view on to the relevant part of the conceptual schema

  12. Mappings

  13. Database Instance • Database schema is not expected to change frequently. • Database instance • The data in the database at any particular point in time.

  14. Schema Instance

  15. Data Independence • Upper levels are unaffected by changes to lower level. • Logical data independence • Refers to the immunity of the external schemas to changes in the conceptual schema. • Physical data independence • Refers to the immunity of the conceptual schema to changes in the internal schema.

  16. Data Definition Language • A language that allows the DBA or user to describe and name the entities, attributes,and relationships required for the application, together with any associated integrity and security constraints. • System catalog (meta data, data dictionary)

  17. Data Definition Language (DDL) • The DDL us used to define a schema or to modify an existing one. • System catalog • Data dictionary

  18. The Data Manipulation Language (DML) • A language that provides a set of operations to support the basic data manipulation operations on the data held in the database. • Insertion, modification, retrieval, deletion of data • Query language • Procedural DMLs • Non-procedural DML (SQL)

  19. Staff SELECT staffNo, fName, lName, position, salary FROM Staff WHERE salary > 10000;

  20. Result Table

  21. Fourth-Generation Languages (4GLs) • What v.s. How • Forms generator • Report generators • Graphics generators • Application generators

  22. Data Models and Conceptual Modeling • Data model • An integrated collection of concepts for describing and manipulating data, relationships between data, and constraints on the data in a organization. • Structural part • Manipulation part • Set of integrity rules • Relational, network, hierarchical, Object-Oriented

  23. Relational Data Model

  24. Network Data Model

  25. Hierarchical Data Model

  26. Conceptual Modeling • The process of constructing a model of the information use in an enterprise that is independent of implementations details such as the target DBMS, application programs, programming languages, or any other physical considerations.

  27. Functions of a DBMS (1/2) • Data storage, retrieval, and update • A user-accessible catalog (meta data) • Transaction support (update salary) • Concurrency control services • Recovery service • Authorization service • Support for data communication

  28. Functions of a DBMS (2/2) • Integrity services • Services to promote data independence • Utility service • Import, monitoring, statistical analysis, index reorganization, garbage collection.

  29. Components of a DBMS (1/2) • Query processor • Database manager • File manager • DML preprocessor • DDL compiler • Catalog manager • Authorization control

  30. Components of a DBMS (2/2) • Command processor • Integrity checker • Query optimizer • Transaction manager • Scheduler • Recovery manager • Buffer manager

  31. Multi-User DBMS Architectures • Teleprocessing • File-Server • There is a large amount of network traffic • A full copy of the DBMS is required on each workstation. • Concurrency, recovery, and integrity control are more complex. • Client-Server

  32. File-Server

  33. Client-Server • It enables wider access to existing databases. • Increased performance. • Different types of computers works in parallel. • Hardware cost are reduced. • Communication costs are reduced. • Increased consistency – single server • It maps on to open-systems architecture naturally.

  34. Client-Server

  35. import java.sql.*; import java.io.*; import java.util.*; //import javax.servlet.*; //import javax.servlet.http.*; public class Total1 { public static void main (String[] arg) { //ServletOutputStream out = res.getOutputStream(); //Load the oracle JDbc driver }

  36. try { Class.forName ("oracle.jdbc.driver.OracleDriver"); } catch (Exception e) { System.out.println("Could not load driver"); } // Connect to the database try { Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@orion.towson.edu:1521:cosc", “user_name",“password"); Statement stmt = conn.createStatement ();

  37. ResultSet rset=null; try { rset= stmt.executeQuery("SELECT * from department"); ResultSetMetaData rsmd=rset.getMetaData(); while (rset.next()) { System.out.println(" " + rset.getString(1) + " " + rset.getString(2) + " " + rset.getString(3) +" "); }

  38. catch (SQLException e){ System.out.println("writetolog: error in SQL "+e+"<br>"); } } catch (SQLException e) { System.out.println("Something wrong " + e.toString()); } } }

More Related