Podcast
Questions and Answers
Which of the following best describes the role of constraints in a data model?
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'?
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?
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?
What is the significance of a 'database schema' in the context of database management?
Which of the following is most closely associated with the term 'database instance'?
Which of the following is most closely associated with the term 'database instance'?
How does a database 'schema' differ from a database 'state'?
How does a database 'schema' differ from a database 'state'?
Why is the 'three-schema architecture' proposed for DBMS?
Why is the 'three-schema architecture' proposed for DBMS?
In the three-schema architecture, what does the 'internal schema' define?
In the three-schema architecture, what does the 'internal schema' define?
Which schema in the three-schema architecture is most concerned with the end-user perspective?
Which schema in the three-schema architecture is most concerned with the end-user perspective?
Why are mappings needed between schema levels in the three-schema architecture?
Why are mappings needed between schema levels in the three-schema architecture?
What is the key benefit of 'logical data independence'?
What is the key benefit of 'logical data independence'?
Why is 'physical data independence' important in database systems?
Why is 'physical data independence' important in database systems?
Which of the following tasks is typically performed using a Data Definition Language (DDL)?
Which of the following tasks is typically performed using a Data Definition Language (DDL)?
What distinguishes a Data Manipulation Language (DML) from a Data Definition Language (DDL)?
What distinguishes a Data Manipulation Language (DML) from a Data Definition Language (DDL)?
In the context of DBMS languages, what does it mean for a DML command to be 'embedded'?
In the context of DBMS languages, what does it mean for a DML command to be 'embedded'?
Which of the following is an example of a 'stand-alone query language interface'?
Which of the following is an example of a 'stand-alone query language interface'?
What is the purpose of 'programmer interfaces' in a DBMS?
What is the purpose of 'programmer interfaces' in a DBMS?
Which of the following is considered a 'user-friendly' DBMS interface?
Which of the following is considered a 'user-friendly' DBMS interface?
What is the role of a 'data dictionary' in a database system?
What is the role of a 'data dictionary' in a database system?
How does an 'active data dictionary' differ from a 'passive data dictionary'?
How does an 'active data dictionary' differ from a 'passive data dictionary'?
In a centralized DBMS architecture, where is all processing done?
In a centralized DBMS architecture, where is all processing done?
What is a key characteristic of a basic 2-tier client-server architecture?
What is a key characteristic of a basic 2-tier client-server architecture?
In a client-server architecture, what is the role of the 'client'?
In a client-server architecture, what is the role of the 'client'?
Which of the following is a function of a DBMS server in a client-server architecture?
Which of the following is a function of a DBMS server in a client-server architecture?
What does an application utilize to access server databases via a standard interface in a client-server context?
What does an application utilize to access server databases via a standard interface in a client-server context?
How does a three-tier client-server architecture enhance security compared to a two-tier architecture?
How does a three-tier client-server architecture enhance security compared to a two-tier architecture?
What is the role of the 'intermediate layer' in a three-tier client-server architecture?
What is the role of the 'intermediate layer' in a three-tier client-server architecture?
Which classification distinguishes DBMSs based on the number of users they support?
Which classification distinguishes DBMSs based on the number of users they support?
What is the key characteristic that differentiates centralized DBMSs from distributed DBMSs?
What is the key characteristic that differentiates centralized DBMSs from distributed DBMSs?
What primarily defines a Homogeneous Distributed DBMS?
What primarily defines a Homogeneous Distributed DBMS?
What primarily defines a Heterogenous Distributed DBMS?
What primarily defines a Heterogenous Distributed DBMS?
What is a common example of a free relational DBMS?
What is a common example of a free relational DBMS?
What are specialized modules in commercial DBMSs, offering additional functionality, sometimes called?
What are specialized modules in commercial DBMSs, offering additional functionality, sometimes called?
Which database model was implemented by Honeywell in 1964-65 (IDS System)?
Which database model was implemented by Honeywell in 1964-65 (IDS System)?
Which of the following is an advantage of the network model?
Which of the following is an advantage of the network model?
Which is a disadvantage of the Network Model?
Which is a disadvantage of the Network Model?
Which company was initially involved in the implementation of the Hierarchical Data Model around 1965?
Which company was initially involved in the implementation of the Hierarchical Data Model around 1965?
Is lack of query optimization a characteristic of The Hierarchical Model?
Is lack of query optimization a characteristic of The Hierarchical Model?
Who proposed the Relational Model in 1970?
Who proposed the Relational Model in 1970?
Which of the following is the trend that started with Informix Universal Server?
Which of the following is the trend that started with Informix Universal Server?
Flashcards
Data Model
Data Model
A set of concepts to describe the structure of a database, the operations, and constraints.
Data Model Structure
Data Model Structure
Used to define the database structure, including elements like entity, record, and table, and relationships among these groups.
Data Model Operations
Data Model Operations
Used for specifying database retrievals and updates.
Conceptual Data Models
Conceptual Data Models
Signup and view all the flashcards
Physical Data Models
Physical Data Models
Signup and view all the flashcards
Implementation Data Models
Implementation Data Models
Signup and view all the flashcards
Database Schema
Database Schema
Signup and view all the flashcards
Schema Diagram
Schema Diagram
Signup and view all the flashcards
Schema Construct
Schema Construct
Signup and view all the flashcards
Database State
Database State
Signup and view all the flashcards
Database State
Database State
Signup and view all the flashcards
Initial Database State
Initial Database State
Signup and view all the flashcards
Valid State
Valid State
Signup and view all the flashcards
Database Schema
Database Schema
Signup and view all the flashcards
Database State
Database State
Signup and view all the flashcards
Three levels
Three levels
Signup and view all the flashcards
Internal Schema
Internal Schema
Signup and view all the flashcards
Conceptual Schema
Conceptual Schema
Signup and view all the flashcards
External Schema
External Schema
Signup and view all the flashcards
External to Internal
External to Internal
Signup and view all the flashcards
Logical Data Independence
Logical Data Independence
Signup and view all the flashcards
Physical Data Independence
Physical Data Independence
Signup and view all the flashcards
Data Definition Language (DDL)
Data Definition Language (DDL)
Signup and view all the flashcards
Data Manipulation Language (DML)
Data Manipulation Language (DML)
Signup and view all the flashcards
High-Level Languages
High-Level Languages
Signup and view all the flashcards
Low Level Languages
Low Level Languages
Signup and view all the flashcards
Stand-alone Query Language Interfaces
Stand-alone Query Language Interfaces
Signup and view all the flashcards
User-Friendly Interfaces
User-Friendly Interfaces
Signup and view all the flashcards
Database System Utilities
Database System Utilities
Signup and view all the flashcards
Data dictionary / repository
Data dictionary / repository
Signup and view all the flashcards
Active Data Dictionary
Active Data Dictionary
Signup and view all the flashcards
Passive Data Dictionary
Passive Data Dictionary
Signup and view all the flashcards
Centralized DBMS
Centralized DBMS
Signup and view all the flashcards
Centralized DBMS
Centralized DBMS
Signup and view all the flashcards
2-tier Client-Server Architecture
2-tier Client-Server Architecture
Signup and view all the flashcards
Web Server
Web Server
Signup and view all the flashcards
Presentation Layer
Presentation Layer
Signup and view all the flashcards
Business Logic Layer
Business Logic Layer
Signup and view all the flashcards
Database Service Layer
Database Service Layer
Signup and view all the flashcards
DBMS Data Model Types
DBMS Data Model Types
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.