Podcast
Questions and Answers
What does a data model primarily describe?
What does a data model primarily describe?
- The network protocols used to access the database
- The programming language used to write the database application
- The structure of a database, operations for manipulating the structure, and its constraints (correct)
- The physical location of the database server
A database schema changes frequently.
A database schema changes frequently.
False (B)
Which of the following is an example of a self-describing data model?
Which of the following is an example of a self-describing data model?
- Relational data model
- Hierarchical data model
- Network data model
- XML (correct)
What is the term for the actual data stored in a database at a particular moment in time?
What is the term for the actual data stored in a database at a particular moment in time?
Which schema level in the three-schema architecture describes physical storage structures and access paths?
Which schema level in the three-schema architecture describes physical storage structures and access paths?
Physical data independence refers to the ability to change the conceptual schema without affecting the internal schema.
Physical data independence refers to the ability to change the conceptual schema without affecting the internal schema.
What is the purpose of a Data Definition Language (DDL)?
What is the purpose of a Data Definition Language (DDL)?
The language used to specify database retrievals and updates is known as the ______.
The language used to specify database retrievals and updates is known as the ______.
Match the DBMS interface with its description:
Match the DBMS interface with its description:
Which of the following is an example of a database utility?
Which of the following is an example of a database utility?
In a centralized DBMS architecture, all processing is done at a central site.
In a centralized DBMS architecture, all processing is done at a central site.
In a two-tier client-server architecture, which component provides database query and transaction services to the clients?
In a two-tier client-server architecture, which component provides database query and transaction services to the clients?
What API is commonly used by Java applications to access a DBMS server?
What API is commonly used by Java applications to access a DBMS server?
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?
In a three-tier architecture, clients directly access the database server.
In a three-tier architecture, clients directly access the database server.
Which of the following is a characteristic of a homogeneous distributed DBMS?
Which of the following is a characteristic of a homogeneous distributed DBMS?
Which data model was implemented by Honeywell in 1964-65 with the IDS system?
Which data model was implemented by Honeywell in 1964-65 with the IDS system?
What does CODASYL stand for, in the context of database systems?
What does CODASYL stand for, in the context of database systems?
SQL is a low-level or procedural language.
SQL is a low-level or procedural language.
Which of the following is a disadvantage of the network model?
Which of the following is a disadvantage of the network model?
The ability to modify the internal schema without affecting the conceptual schema is known as ______ data independence.
The ability to modify the internal schema without affecting the conceptual schema is known as ______ data independence.
Which data model was formalized based on IBM's IMS system?
Which data model was formalized based on IBM's IMS system?
A data dictionary is exclusively accessed by DBMS software and not by users or DBAs.
A data dictionary is exclusively accessed by DBMS software and not by users or DBAs.
Which of the following languages is NOT typically used as a scripting language for database programs?
Which of the following languages is NOT typically used as a scripting language for database programs?
Which of the following is a characteristic of 'declarative languages'?
Which of the following is a characteristic of 'declarative languages'?
What term describes commercial DBMS add-ons offering specialized functionality like spatial data handling?
What term describes commercial DBMS add-ons offering specialized functionality like spatial data handling?
What is the primary disadvantage of the Hierarchical model regarding complex relationships?
What is the primary disadvantage of the Hierarchical model regarding complex relationships?
In the context of database systems, special-purpose OLTP systems are characterized by their use in ______ environments such as airline or hotel reservations.
In the context of database systems, special-purpose OLTP systems are characterized by their use in ______ environments such as airline or hotel reservations.
Which database architecture would be most suited for maximizing data security if clients are connecting over the web?
Which database architecture would be most suited for maximizing data security if clients are connecting over the web?
Match the data model with its key characteristic:
Match the data model with its key characteristic:
What factor led to a decline of the term "Object-relational" in database systems?
What factor led to a decline of the term "Object-relational" in database systems?
Which of the following is a primary characteristic of federated database systems?
Which of the following is a primary characteristic of federated database systems?
The database schema is also called extension.
The database schema is also called extension.
Which of the following components is responsible for transforming requests and data between schema levels in the three-schema architecture?
Which of the following components is responsible for transforming requests and data between schema levels in the three-schema architecture?
The ______ approach gives applications on clients access to server databases via a standard interface such as ODBC or JDBC.
The ______ approach gives applications on clients access to server databases via a standard interface such as ODBC or JDBC.
Which of the following interfaces is designed for naive users to fill in entries on a form?
Which of the following interfaces is designed for naive users to fill in entries on a form?
What is the most typical role of clients inside a 2-tier client server architure?
What is the most typical role of clients inside a 2-tier client server architure?
Database schemas change every time the database is updated.
Database schemas change every time the database is updated.
Which of the following is the name for the schema at the conceptual level to describe the structure of the database for a community of users?
Which of the following is the name for the schema at the conceptual level to describe the structure of the database for a community of users?
The actual data stored in a database at a particular moment in time is the ______.
The actual data stored in a database at a particular moment in time is the ______.
Which of the following products resulted from a joint effort by IBM and North American Rockwell in 1965??
Which of the following products resulted from a joint effort by IBM and North American Rockwell in 1965??
The ability for program-data independence is a proposal to support DBMS characteristics.
The ability for program-data independence is a proposal to support DBMS characteristics.
Flashcards
What is a Data Model?
What is a Data Model?
A set of concepts describing the structure of a database, operations for manipulating these structures, and database constraints.
Data Model Operations
Data Model Operations
Operations for database retrievals and updates, referring to constructs of the data model.
Conceptual Data Models
Conceptual Data Models
Provide concepts close to how users perceive data (entity-based or object-based).
Physical Data Models
Physical Data Models
Signup and view all the flashcards
Self-Describing Data Models
Self-Describing Data Models
Signup and view all the flashcards
Database Schema
Database Schema
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
Valid State
Valid State
Signup and view all the flashcards
Schema vs. State Distinction
Schema vs. State Distinction
Signup and view all the flashcards
Schema
Schema
Signup and view all the flashcards
State
State
Signup and view all the flashcards
Three-Schema Architecture
Three-Schema Architecture
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
Schema Mappings
Schema Mappings
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 DML
High-Level DML
Signup and view all the flashcards
Low Level DML
Low Level DML
Signup and view all the flashcards
Stand-alone query Language Interfaces
Stand-alone query Language Interfaces
Signup and view all the flashcards
User-Friendly DBMS Interfaces
User-Friendly DBMS Interfaces
Signup and view all the flashcards
DBMS Programming Interfaces
DBMS Programming Interfaces
Signup and view all the flashcards
Database System Utilities
Database System Utilities
Signup and view all the flashcards
Other Tools
Other Tools
Signup and view all the flashcards
Centralized DBMS
Centralized DBMS
Signup and view all the flashcards
2-Tier Client-Server Architectures
2-Tier Client-Server Architectures
Signup and view all the flashcards
Clients in 2-Tier Architecture
Clients in 2-Tier Architecture
Signup and view all the flashcards
3-Tier Client-Server Architecture
3-Tier Client-Server Architecture
Signup and view all the flashcards
Classification of DBMSs
Classification of DBMSs
Signup and view all the flashcards
Cost Considerations for DBMSs
Cost Considerations for DBMSs
Signup and view all the flashcards
History of Data Models
History of Data Models
Signup and view all the flashcards
Network Data Model
Network Data Model
Signup and view all the flashcards
Advantages of Network Data Model
Advantages of Network Data Model
Signup and view all the flashcards
Disadvantages of the Network Data Model
Disadvantages of the Network Data Model
Signup and view all the flashcards
Advantages of Hierarchical Model
Advantages of Hierarchical Model
Signup and view all the flashcards
Disadvantages of Hierarchical Model
Disadvantages of Hierarchical Model
Signup and view all the flashcards
Study Notes
Data Models
- Data models consist of concepts that describe a database's structure, the operations for manipulating the structure, and constraints.
- Data model constructs define the database structure including the data types, elements e.g. entity, record, table, and relationships between elements.
- Data constraints specify valid data restrictions and are consistently enforced.
Data Model Operations
- Operations specify database retrievals and updates.
- Operations include generic functions (insert, delete, and update) and user-defined operations (e.g., compute_student_gpa, update_inventory).
Categories of Data Models
- Conceptual (high-level, semantic) data models offer concepts close to the user's perception of the data. These are also called entity-based or object-based data models.
- Physical (low-level, internal) data models describe data storage details in the computer and are specified ad-hoc through DBMS manuals.
- Implementation (representational) data models fall between conceptual and physical models and are used in commercial DBMS implementations.
- Self-describing data models combine data description with data values, examples include XML, Key-value stores and some NOSQL systems.
Schemas
- This is the description of a database describing the structure, types, and constraints. Schema diagrams are illustrative displays of database schemas. Schema constructs form a component of the schema i.e. STUDENT, COURSE.
Instances
- A database state, also called a database instance (or occurrence or snapshot), includes all the data in the database at a specific moment. "Instance" can also be applied to individual database components such as record, table or entity.
Database State
- This refers to the current content of the database. The initial database state refers to when the database is originally loaded. A valid state satisfies the structure and constraints of the database.
Schemas vs Instance
- Database schema changes are infrequent.
- Database state changes with every update.
- Schemas are known as intension.
- A state is known as extension.
Three-Schema Architecture
- This supports program-data independence and multiple views of data.
- It is not explicitly used in commercial DBMS products.
- It is useful in explaining database system organization.
- It defines DBMS schemas at three levels: internal, conceptual, and external.
Internal Schema
- At an internal level it describes physical storage structures and access paths, typically using a physical data model e.g. indexes.
Conceptual Schema
- This describes the structure and constraints for the whole database for a community of users.
- This uses a conceptual or implementation data model.
External Schemas
- At the external level to describe the various user views. Usually using the same data model as the conceptual schema.
Mappings Between Schemas
- Mappings are needed to transform requests and data between schema levels.
- Programs refer to an external schema and are mapped by the DBMS to the internal schema for execution.
- Data extracted from the internal DBMS level is reformatted to match the user's external view.
Data Independence
- Logical data independence is the capacity to change the conceptual schema without changing the external schemas or their application programs.
- Physical data independence is the capacity to change the internal schema without changing the conceptual schema. For example, file structures reorganized or new indexes created to improve database performance.
- When lower-level schemas are changed, only the mappings between schemas need to be changed, leaving higher-level schemas and application programs unchanged.
DBMS Languages
- These include Data Definition Language (DDL) and Data Manipulation Language (DML).
- High-level or non-procedural languages include SQL which may be used in a standalone way or be embedded in a programming language.
- Low-level or procedural languages must be embedded in a programming language.
Data Definition Language (DDL)
- DDL is used by DBAs and database designers to specify the conceptual schema. In many DBMSs, it also defines internal and external schemas (views).
- Some DBMSs use separate storage definition language (SDL) and view definition language (VDL) to define internal and external schemas.
- SDL is realized via DBMS commands provided to DBAs and designers.
Data Manipulation Language (DML)
- DML specifies database retrievals and updates. DML commands (data sublanguage) can be embedded in a host language like COBOL, C, C++, or Java.
- Function libraries can also provide DBMS access from a programming language. Alternatively, stand-alone DML commands can be applied directly via a query language.
Types of DML
- High-level or non-procedural languages, like SQL, are "set"-oriented and specify what data to retrieve.
- Low-level or procedural languages like those used to retrieve data one record at a time; constructs such as looping are needed to retrieve multiple records, along with positioning pointers.
DBMS Interfaces
- Interfaces include: stand-alone query languages; programmer interfaces for embedding DML; user-friendly interfaces; and mobile interfaces for transactions via mobile apps.
Programmer Interfaces
- Embedded approaches i.e. embedded SQL (for C, C++, etc.) and SQLJ (for Java).
- Procedure call approaches, e.g. JDBC for Java and ODBC (Open Database Connectivity) for other languages as APIs.
- Database programming language approach, e.g. Oracle's PL/SQL, and scripting languages like PHP and Python for database programs.
User-Friendly DBMS Interfaces
- These include menu-based popular for browsing the web, forms-based, graphics-based with point and click, drag and drop etc, natural language requests in written English, combinations of all the above.
Other DBMS Interfaces
- Natural language for free text queries; speech input and output; web browsers with keyword search; parametric interfaces for specialized users like bank tellers; and interfaces for DBAs to manage user accounts, parameters, and schemas.
Database System Utilities
- Functions performed include: loading data, backing up the database periodically, reorganizing file structures, monitoring performance, generating reports, sorting, user monitoring, compressing data, etc.
Other Tools
- Data dictionary/repository stores schema descriptions, design decisions, program descriptions, user information, and usage standards.
- Active data dictionaries are accessed by DBMS software and users/DBAs.
- Passive data dictionaries are accessed by users/DBAs only.
- Application development environments and CASE tools.
- Examples: PowerBuilder (Sybase), JBuilder (Borland), and JDeveloper 10G (Oracle).
Centralized DBMS
- Combines everything into a single system: DBMS Software, hardware, application programs, and user interface processing.
- Users can connect via remote terminals but all processing happens at the central site.
Client-Server Architectures
- Specialized servers with specialized functions i.e. Print server, File server, DBMS server, Web server and Email server.
- Clients can access these specialized servers as needed.
- Clients provide interfaces to access server resources and may be diskless machines, PCs, or workstations with client software installed, connecting via LAN or wireless networks.
- Relational DBMS servers are often called SQL servers, query servers, or transaction servers.
- Applications on clients use an API to access server databases via standard interfaces like ODBC or JDBC.
- Clients and servers need appropriate modules for ODBC or JDBC, and client programs can connect to several DBMSs, known as data sources.
Two Tier Client-Server Architecture
- Two-tier client server has data sources as files or non-DBMS data management software.
Three-Tier Client-Server Architecture
- In three-tier the intermediate layer is called an Application Server or Web Server. This setup is commonly used with web applications.
- Three Tier stores web connectivity software and the business application logic.
- It serves as a conduit for sending partially processed data between the database server and the client.
Three Tier Architecture Advantages
- Security can be enhanced as Databases are only accessible via middle tier, and clients cannot directly access it. Web browsers also contain clients which make it a PC or a mobile device.
Classification of DBMSS
- Based on the data model used i.e. Legacy: Network, Hierarchical.
- Currently used: Relational, Object-oriented, Object-relational.
- Recent Technologies: Key-value storage systems, NOSQL systems: document based, column-based, graph-based and key-value based. Native XML DBMSs.
- Other classifications include: single-user vs. multi-user, and centralized vs. distributed.
Variations of Distributed DBMSs (DDBMSs)
- Homogeneous DDBMS are variations where data is the same.
- Heterogeneous DDBMS are variations where data is different.
- Federated or Multidatabase Systems have loosely coupled with high degrees of autonomy. Distributed Database Systems are now client-server based because they support a set of database servers supporting a set of clients.
Cost Considerations For DBMSS
- Data model systems range from free open-source to millions of dollars. MySQL and PostgreSQL are examples of free relational DBMSs. Commercial DBMS offer additional specialized modules for time-series, spatial data, documents, and XML, that are purchased separately. They are sometimes called cartridges (Oracle) or blades.
- Different licensing options available such as: site license, maximum concurrent users (seat license), and single user.
Other Considerations
- Type of access paths within database systems.
- E.g.- inverted indexing based (ADABAS). Fully indexed databases provide access by any keyword (used in search engines).
- General Purpose vs. Special Purpose.
- E.g.- Airline Reservation systems or many others reservation systems for hotel/car etc. Are special purpose OLTP (Online Transaction Processing Systems)
History of Data Models
- These generally include: Network Model, Hierarchical Model, Relational Model, Object-oriented Data Models, and Object-Relational Models.
Network Model
- Honeywell implemented the first network DBMS in 1964-65 (IDS System). It was heavily adopted due to CODASYL report in 1971. Later implemented in systems like IDMS (Cullinet), DMS 1100 (Unisys), IMAGE (H.P.), VAX -DBMS (Digital Equipment Corp).
Network Model Advantages
- It is able to model complex relationships and represents semantics of add/delete on the relationships.
- It can also handle most situations for modeling using record types and relationship types.
- Language is navigational; uses constructs like FIND, FIND member, FIND owner, FIND NEXT within set, GET, etc.
Network Model Disadvantages
- Navigational and procedural nature of processing.
- Database contains a complex array of pointers that thread through a set of records with little scope for automated "query optimization".
Hierarchical Model
- IBM and North American Rockwell initially implemented in 1965 resulting in IBM's IMS family of systems. IBM's IMS product had a very large customer base worldwide and other systems based on this model include System 2k (SAS inc.)
Hierarchical Model Advantages
- Simple to construct and operate.
- Correspond to a number of natural hierarchically organized domains, e.g., organization (“org”) chart.
- Language is simple with constructs like GET, GET UNIQUE, GET NEXT, GET NEXT WITHIN PARENT, etc.
Hierarchical Model Disadvantages
- Navigational and procedural nature of processing.
- Database is visualized as a linear arrangement of records.
- Little scope for "query optimization".
Relational Model
- E.F. Codd (IBM), proposed in 1970, with the first commercial system in 1981-82. The model is now in several commercial products (e.g. DB2, ORACLE, MS SQL Server, SYBASE, INFORMIX) as well as, several free open source implementations, e.g. MySQL, PostgreSQL.
- It is the most dominant model used when developing database applications.
- SQL relational standards: SQL-89 (SQL1), SQL-92 (SQL2), SQL-99, SQL3, ...
Object-Oriented Data Models
- Several models have been proposed for implementation in a database system.
- A set comprises models of persistent O-O Programming Languages such as C++ (e.g., in OBJECTSTORE or VERSANT), and Smalltalk (e.g., in GEMSTONE).
- Additionally, systems like O2, ORION (at MCC - then ITASCA),IRIS (at H.P.- used in Open OODB). Object Database Standard: ODMG-93, ODMG-version 2.0, ODMG-version 3.0.
Object-Relational Models
- The trend to mix object models with relational was started with Informix Universal Server. Relational systems incorporated concepts from object databases leading to object-relational. These are Exemplified in the versions of Oracle, DB2, and SQL Server and other DBMSs. The focus is being place on extending relational DBMSs functionality processing XML, Text and other data types. The term "Object-relational" is receding in the marketplace
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.