Database Data Models

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

Which of the following best describes the role of constraints in a data model?

  • They specify restrictions on valid data within the database. (correct)
  • They dictate the physical storage of data on the computer.
  • They define the basic operations for manipulating data.
  • They describe the structure of the database.

In the context of data models, what is the primary purpose of defining 'operations'?

  • To optimize data storage.
  • To specify the structure of the database.
  • To set constraints on the data.
  • To enable database retrievals and updates. (correct)

How do implementation data models differ from conceptual data models?

  • Implementation data models define data storage in the computer while conceptual models define database structure.
  • Implementation data models are closer to how users perceive data, while conceptual models are about physical storage.
  • Implementation data models are used by commercial DBMS, while conceptual models are for DBMS design manuals.
  • Implementation data models fall between conceptual and physical models, used by commercial DBMS. (correct)

What is the significance of a 'database schema' in the context of database management?

<p>It describes the structure, data types, and constraints of the database. (C)</p> Signup and view all the answers

Which of the following is most closely associated with the term 'database instance'?

<p>The actual data content of the database at a specific time. (B)</p> Signup and view all the answers

How does a database 'schema' differ from a database 'state'?

<p>The schema describes the database structure, while the state represents the data at a specific moment. (A)</p> Signup and view all the answers

Why is the 'three-schema architecture' proposed for DBMS?

<p>To support program-data independence and multiple views of the data. (C)</p> Signup and view all the answers

In the three-schema architecture, what does the 'internal schema' define?

<p>The physical storage structure and access paths of the database. (D)</p> Signup and view all the answers

Which schema in the three-schema architecture is most concerned with the end-user perspective?

<p>The external schema. (B)</p> Signup and view all the answers

Why are mappings needed between schema levels in the three-schema architecture?

<p>To transform data and requests between different levels. (C)</p> Signup and view all the answers

What is the key benefit of 'logical data independence'?

<p>Ability to change the conceptual schema without affecting the external schemas. (B)</p> Signup and view all the answers

Why is 'physical data independence' important in database systems?

<p>It enables changes to the internal schema without affecting the conceptual schema. (C)</p> Signup and view all the answers

Which of the following tasks is typically performed using a Data Definition Language (DDL)?

<p>Defining the conceptual schema of a database. (D)</p> Signup and view all the answers

What distinguishes a Data Manipulation Language (DML) from a Data Definition Language (DDL)?

<p>DML is used to specify database retrievals and updates, while DDL is used to define the database structure. (B)</p> Signup and view all the answers

In the context of DBMS languages, what does it mean for a DML command to be 'embedded'?

<p>It is included within a general-purpose programming language. (A)</p> Signup and view all the answers

Which of the following is an example of a 'stand-alone query language interface'?

<p>Entering SQL queries in SQL*Plus (Oracle). (B)</p> Signup and view all the answers

What is the purpose of 'programmer interfaces' in a DBMS?

<p>To enable embedding DML in programming languages. (B)</p> Signup and view all the answers

Which of the following is considered a 'user-friendly' DBMS interface?

<p>A menu-based interface. (C)</p> Signup and view all the answers

What is the role of a 'data dictionary' in a database system?

<p>To store metadata, such as schema descriptions and design decisions. (A)</p> Signup and view all the answers

How does an 'active data dictionary' differ from a 'passive data dictionary'?

<p>An active dictionary is accessed by DBMS software and users/DBAs, while a passive dictionary is accessed only by users/DBAs. (B)</p> Signup and view all the answers

In a centralized DBMS architecture, where is all processing done?

<p>At a centralized site. (A)</p> Signup and view all the answers

What is a key characteristic of a basic 2-tier client-server architecture?

<p>Specialized servers provide specific functions, and clients access them as needed. (D)</p> Signup and view all the answers

In a client-server architecture, what is the role of the 'client'?

<p>To provide interfaces for accessing server resources. (A)</p> Signup and view all the answers

Which of the following is a function of a DBMS server in a client-server architecture?

<p>Providing database query and transaction services. (D)</p> Signup and view all the answers

What does an application utilize to access server databases via a standard interface in a client-server context?

<p>Application Program Interface (API). (C)</p> Signup and view all the answers

How does a three-tier client-server architecture enhance security compared to a two-tier architecture?

<p>By making the database server only accessible via a middle tier. (D)</p> Signup and view all the answers

What is the role of the 'intermediate layer' in a three-tier client-server architecture?

<p>To store web connectivity software and business logic. (A)</p> Signup and view all the answers

Which classification distinguishes DBMSs based on the number of users they support?

<p>Single-user vs. multi-user. (B)</p> Signup and view all the answers

What is the key characteristic that differentiates centralized DBMSs from distributed DBMSs?

<p>The use of a single computer vs. multiple computers. (D)</p> Signup and view all the answers

What primarily defines a Homogeneous Distributed DBMS?

<p>Use of the same software and schema across different locations. (C)</p> Signup and view all the answers

What primarily defines a Heterogenous Distributed DBMS?

<p>Use of different software and schema across different locations. (B)</p> Signup and view all the answers

What is a common example of a free relational DBMS?

<p>MySQL. (A)</p> Signup and view all the answers

What are specialized modules in commercial DBMSs, offering additional functionality, sometimes called?

<p>Blades or cartridges. (A)</p> Signup and view all the answers

Which database model was implemented by Honeywell in 1964-65 (IDS System)?

<p>Network Model. (C)</p> Signup and view all the answers

Which of the following is an advantage of the network model?

<p>Ability to model complex relationships. (C)</p> Signup and view all the answers

Which is a disadvantage of the Network Model?

<p>Navigational and procedural nature of processing. (D)</p> Signup and view all the answers

Which company was initially involved in the implementation of the Hierarchical Data Model around 1965?

<p>IBM. (B)</p> Signup and view all the answers

Is lack of query optimization a characteristic of The Hierarchical Model?

<p>Yes. (C)</p> Signup and view all the answers

Who proposed the Relational Model in 1970?

<p>E.F. Codd. (D)</p> Signup and view all the answers

Which of the following is the trend that started with Informix Universal Server?

<p>Object-Relational Models. (B)</p> Signup and view all the answers

Flashcards

Data Model

A set of concepts to describe the structure of a database, the operations, and constraints.

Data Model Structure

Used to define the database structure, including elements like entity, record, and table, and relationships among these groups.

Data Model Operations

Used for specifying database retrievals and updates.

Conceptual Data Models

Provide concepts close to how users perceive data (entity or object based).

Signup and view all the flashcards

Physical Data Models

Describe details of how data is stored in the computer, often specified ad-hoc.

Signup and view all the flashcards

Implementation Data Models

Fall between conceptual and physical, used by DBMS implementations.

Signup and view all the flashcards

Database Schema

The description of a database, including structure, data types and constraints.

Signup and view all the flashcards

Schema Diagram

Illustrative display of most aspects of a database schema.

Signup and view all the flashcards

Schema Construct

A component of the schema, like a STUDENT or COURSE object.

Signup and view all the flashcards

Database State

The actual data stored in a database at a particular moment

Signup and view all the flashcards

Database State

Content of a database at a moment in time.

Signup and view all the flashcards

Initial Database State

Database state when it's initially loaded.

Signup and view all the flashcards

Valid State

A state that satisfies the structure and constraints.

Signup and view all the flashcards

Database Schema

Changes very infrequently.

Signup and view all the flashcards

Database State

Changes every time the database is updated.

Signup and view all the flashcards

Three levels

Internal schema, conceptual schema, external schemas.

Signup and view all the flashcards

Internal Schema

Describes physical storage structures.

Signup and view all the flashcards

Conceptual Schema

Represents the logical structure.

Signup and view all the flashcards

External Schema

Describes various user views.

Signup and view all the flashcards

External to Internal

Programs refer to an external schema and are mapped by the DBMS to the internal schema for execution.

Signup and view all the flashcards

Logical Data Independence

The capacity to change the conceptual schema without changing external schemas.

Signup and view all the flashcards

Physical Data Independence

The capacity to change the internal schema without changing the conceptual schema.

Signup and view all the flashcards

Data Definition Language (DDL)

Used to specify the conceptual schema.

Signup and view all the flashcards

Data Manipulation Language (DML)

Used to specify database retrievals and updates.

Signup and view all the flashcards

High-Level Languages

May be used in a standalone or embedded way.

Signup and view all the flashcards

Low Level Languages

Must be embedded in a programming languages.

Signup and view all the flashcards

Stand-alone Query Language Interfaces

Entering SQL queries at the DBMS interactive SQL interface.

Signup and view all the flashcards

User-Friendly Interfaces

Menu-based, forms-based, graphics-based

Signup and view all the flashcards

Database System Utilities

Loading data stored in files into a database, backing up the database, reorganizing database file structures

Signup and view all the flashcards

Data dictionary / repository

Used to store schema descriptions, design decisions, and user information.

Signup and view all the flashcards

Active Data Dictionary

Accessed by DBMS software/users.

Signup and view all the flashcards

Passive Data Dictionary

Accessed by users/DBA only.

Signup and view all the flashcards

Centralized DBMS

Integrates everything into a single system.

Signup and view all the flashcards

Centralized DBMS

Combines DBMS software, hardware, application programs, and user interface processing software.

Signup and view all the flashcards

2-tier Client-Server Architecture

Specialized Servers with Specialized functions. Clients can access the specialized servers as needed.

Signup and view all the flashcards

Web Server

Stores web connectivity software and the business logic that help access the corresponding data from the database server.

Signup and view all the flashcards

Presentation Layer

GUI, Web Interface

Signup and view all the flashcards

Business Logic Layer

Business rules / procedures.

Signup and view all the flashcards

Database Service Layer

Database services /functions.

Signup and view all the flashcards

DBMS Data Model Types

Relational, Network, Hierarchical, Object-oriented, Object-relational.

Signup and view all the flashcards

Study Notes

Data Models

  • It's a set of concepts describing a database's structure.
  • It defines the operations and the constraints a database adheres to.

Data Model Structure and Constraints

  • Constructs define the structure.
  • Elements, data types, and groups like entities, records, and tables, as well as relationships, are included.
  • Some contraints restrict valid data, and must always be enforced.

Data Model Operations

  • Operations used to specify database retrievals and updates.
  • Operations include basic model operations (insert, delete, update) and user-defined operations (compute_student_gpa, update_inventory)

Categories of Data Models

  • Conceptual (high-level, semantic) data models provide concepts close to how users perceive data (entity-based/object-based).
  • Physical (low-level, internal) data models describe how data is stored in the computer, specified ad-hoc in DBMS manuals.
  • Implementation (representational) data models provide concepts falling between conceptual and physical, used in DBMS implementations (e.g., relational data models).

Schemas vs. Instances

  • Database schema is the description.
  • Schema includes the database structure, data types, and the constraints.
  • Schema diagram is an illustrative display of a schema's aspects.
  • Schema construct is a schema component or object (e.g., STUDENT, COURSE).
  • Database state refers to the actual data stored in a database at a specific time, which is the data collection.
  • Database state is also called database instance or snapshot.

Database Schema vs. Database State

  • Database content at a moment is the database state.
  • Initial database state is when it's initially loaded.
  • A valid state satisfies the database structure and constraints.
  • The database schema changes infrequently, while the database state changes on every update.
  • Schema is also called intension.
  • State is also called extension.

Three-Schema Architecture

  • It supports DBMS characteristics like program-data independence.
  • It supports multiple views of data.
  • Internal schema at the internal level describes the physical storage structures and access paths, typically using a physical data model.
  • Conceptual schema represents the logical structure at a high level, defining entities, relationships, and constraints relevant to the domain.
  • Conceptual schema defines entities, relationships, and constraints without specifying data storage/access.
  • It uses a conceptual or implementation data model.
  • External schemas on the external level describe user views.
  • Commonly uses the same data model as the conceptual schema.
  • Mappings transform requests and data through schema levels.
  • Programs refer to an external schema, mapped by the DBMS to the internal schema for execution.
  • Data from the internal DBMS level is reformatted to match the user's external view (e.g., SQL query results in a Web page).

Data Independence

  • Logical data independence is the ability to change the conceptual schema without altering external schemas and their application programs.
  • Physical data independence is the ability to alter the internal schema without changing the conceptual schema.
  • For instance, file structures can be reorganized or new indices created to improve database performance.

DBMS Languages

  • Data Definition Language (DDL).
  • Data Manipulation Language (DML).
  • High-Level/Non-procedural Languages include SQL.
  • Those languages may be used standalone or embedded in a programming language.
  • Low Level/Procedural Languages, must be embedded in a programming language.
  • DBA and database designers use DDL to specify the concept.
  • Many DBMSs use the DDL to define internal/external schemas (views).
  • DML specifies database retrievals and updates.
  • DML commands (data sub-language) can be embedded in general-purpose programming languages (host languages), like C, C++, or Java.
  • Alternatively, stand-alone DML commands can be applied directly (as a query language).

DBMS Interfaces

  • Stand-alone query examples include interactive SQL interfaces.
  • Programmer interfaces are for embedding DML into programming languages.
  • User-friendly interfaces can be menu, forms, or graphics-based.

DBMS Programming Language Interfaces

  • Embedded approach example: Embedded SQL (for C, C++, etc.), SQLJ (for Java).
  • Procedure call approach example: JDBC (Java), ODBC (other languages).
  • Database Programming Language approach example: Oracle's PL/SQL, incorporating SQL; its data types are integral components.

User-Friendly DBMS Interfaces

  • Menu-based interfaces are often used for web browsing.
  • Forms-based, designed for naive users
  • Graphics-based interfaces use functions like point and click etc.
  • Natural Language uses requests are written in English.
  • Combinations: menus and forms can be used extensively in web database interfaces.

Other DBMS Interfaces

  • Speech can act as Input and Ouput.
  • Web browsers can be interfaces.
  • Parametric interfaces, e.g., function keys for bank tellers.
  • Interfaces for the DBA involves creating user accounts, and authorizations.
  • It also involves setting system parameters and changing schemas/access paths.

Database System Utilities

  • Loading data from files involves data conversion tools.
  • Backing up databases periodically on tape.
  • Reorganizing database file structures.
  • Reporting generation utilities.
  • Performance monitoring utilities.
  • Sorting, user monitoring and data compression.

Other Tools

  • Data dictionary/repository stores schema descriptions, design decisions, user information, usage standards.
  • Active data dictionary is accessed by DBMS software/users/DBAs.
  • Passive data dictionary is accessed by users/DBAs only.
  • Application Development Environments and CASE (computer-aided software engineering) tools includes: PowerBuilder (Sybase), JBuilder (Borland), and JDeveloper 10G (Oracle).

Centralized and Client-Server DBMS Architectures

  • Centralized DBMS integrates everything, including DBMS software, hardware, applications, and user interface processing software.
  • Users can connect through remote terminals with processing done at the central site.

Basic 2-tier Client-Server Architectures

  • Specialized servers: print, file, DBMS, web, and email.
  • Clients access specific servers as required.

Clients

  • Clients provide interfaces via software modules to access server resources.
  • Clients include diskless machines, PCs, and workstations with client software only.
  • Clients connected to servers via networks (LAN, wireless, etc.).

DBMS Server

  • It gives database query and transaction services to clients.
  • Relational DBMS servers are often SQL servers, query servers, or transaction servers.
  • Client applications use APIs (Application Program Interface) to access server databases via standards like ODBC for general connectivity or JDBC for Java.
  • Clients and servers need client and server module software installed.

Two Tier Client-Server Architecture

  • A client program connects to multiple DBMSs (data sources).
  • Data sources may be files or non-DBMS.
  • Some object DBMSs move functionality to clients, including data dictionaries, optimizations, and recovery across multiple servers.

Three Tier Client-Server Architectures

  • Common construction for web applications.
  • Application/Web server stores web connectivity software and access the corresponding data from the database server and businesss logics.
  • Acts as a conduit of partially processed data between a server and client.
  • It enhances security through controlled database server accessibility, preventing clients from direct access.

Classification of DBMSs

  • Based on the data model, including traditional (relational, network, hierarchical) and emerging (object-oriented, object-relational) types.
  • Other classifications: single vs. multi-user and centralized vs. distributed.

Variations of Distributed DBMSs (DDBMSs)

  • Homogeneous DDBMS.
  • Heterogeneous DDBMS.
  • Federated or Multidatabase Systems.
  • Distributed Database Systems became client-server with database servers supporting a client set, rather than a distributed environment.

Cost Considerations for DBMSs

  • Cost ranges from free open-source to millions based on configurations.
  • Free relational examples: MySQL, PostgreSQL.
  • Commercial DBMSs come with additional specialized modules (time-series, spatial data, document, XML).
  • Such modules offer specific functionality when purchased seperately.
  • Some are called cartridges in Oracle) or blades.
  • licensing options: site license, concurrent users (seat license), single user.

History of Data Models

  • Network Model
  • Hierarchical Model
  • Relational Model
  • Object-oriented Data Models
  • Object-Relational Models

History of Data Models: Network Model

  • Honeywell implemented first network DBMS in 1964-65 (IDS System).
  • Heavily supported by CODASYL (Conference on Data Systems Languages) via the DBTG report of 1971.
  • Systems implementation included IDMS, DMS 1100, IMAGE, VAX -DBMS.

Network Model: Advantages

  • Complex relationships and semantics of add/delete actions can be modeled.
  • Record types and relationships allow handling for most modelling situations.
  • Languages are navigational, using constructs like FIND, FIND member/owner/NEXT.
  • Programmers have the option to use optimal navigation.

Network Model: Disadvantages

  • Navigational and procedural nature of processing.
  • Complex pointer array.
  • Little scope for automated “query optimization”.

History of Data Models: Hierarchical Data Model

  • Co-implemented by IBM and North American Rockwell around 1965, resulting in the IMS family.
  • IBM has a customer base worldwide with its IMS product.
  • It was formalized based on the IMS system.
  • The model includes System 2k (SAS inc.).

Hierarchical Model: Advantages

  • Simply constructed and operated.
  • Corresponds to number of natural hierarchically organized domains.
  • Is simple via constructs like GET, GET UNIQUE, GET NEXT etc.

Hierarchical Model: Disadvantages

  • Navigational and procedural nature of processing.
  • Database is seen as linear arrangement of records.
  • There is little scope for query optimisations.

History of Data Models: Relational Model

  • E.F. Codd (IBM) proposed it in 1970. The first commercial systems were in 1981-82.
  • Exists in DB2, ORACLE, MS SQL Server, SYBASE, INFORMIX).
  • Several free open source examples such as MySQL, PostgreSQL currently exist.
  • Remains most dominant for developing database applications.
  • SQL relational standards follow SQL-89 (SQL1), SQL-92 (SQL2), SQL-99, SQL3.
  • Model details are described in chapters 5-11.

History of Data Models: Object-Oriented Data Models

  • Several models exists to be implemented in a database system.
  • Models of persistent O-O Programming Languages include those such as C++, and Smalltalk.
  • Systems include O2, ORION (at MCC - then ITASCA), IRIS (at H.P.).
  • Object Database Standard follows ODMG-93, ODMG-version 2.0, ODMG-version 3.0.
  • Chapters 20 and 21 describe this model.

History of Data Models: Object-Relational Models

  • Latest trend, starting with Informix Universal Server.
  • Relational systems incorporate concepts from object databases, leading to object-relational systems.
  • Exemplified in the latest versions of Oracle-10i, DB2, and SQL Server and other DBMSs.
  • SQL-99 includes standards that will be enhanced.
  • Chapter 22 describes the topic.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Data Models and Database Management Systems
37 questions
Database Management and Data Models
8 questions
Introduction to Data Management
48 questions
Use Quizgecko on...
Browser
Browser