Chapter 2 - Data Models Flashcards
Data Modeling
The first step in designing a database. The process of creating a specific data model for a determined problem domain. Iterative, progressive process.
Problem Domain
Clearly defined area within the real-world environment, with well-defined scope and boundaries that will be systematically addressed.
Data Model
Relative simple representation of more complex real-world data structures. An abstraction.
What should an implementation-ready data model contain?
1) A description of the data structure that will store end-user data.
2) A set of enforceable rules to guarantee data integrity.
3) A data manipulation methodology to support the real-world data transformations.
Entity
A person, place, thing or event about which data will be collected and stored. Each entity occurrence is unique and distinct.
Attribute
A characteristic of an entity. Equivalent of fields in file systems.
Relationship
Describes an association among entities. Three types of relationships. One-to-many, many-to-many, and one-to-one. Relationships are bidirectional.
One-to-many (1:M or 1..*) relationship
Example: A painter creates many different paintings, but each painting has only one painter.
Many-to-Many (M:N or ..) relationship
Example: An employee may learn many job skills, and each job skill may be learned by many employees.
One-to-One (1:1 or 1..1) relationship
Example: Each store managed by single employee, and each employee manages only a single store.
Constraint
A restriction placed on the data. Ensure data integrity.
Example: Student’s GPA must be between 0.00 and 4.00.
Business rule
A brief, precise, and unambiguous description of a policy, procedure, or principle within a specific organization. Used to define entities, attributes, relationships and constraints.
Hierarchical model
Developed in 1960s to manage large amounts of data for complex manufacturing projects. Basic logical structure represented by an upside down tree. Contains segments.
Segment
The equivalent of a file system’s record type. A higher layer is perceived as parent of segment directly beneath it, which is called the child.
Network model
Created to represent complex data relationships more effectively than Hierarchical, improve database performance, and impose database standard. Unlike Hierarchical, allows a record to have more than one parent.
Schema
Conceptual organization of the entire database as viewed by the database administrator.
Subschema
The portion of the database “seen” by the application programs that actually produce desired information from the data within the database.
Data Manipulation Language (DML)
Defines the environment in which data can be managed. Used to work with the data in the database.
Data Definition Language (DDL)
Enables the database administrator to define the schema components.
Relational Model
Introduced in 1970 by E.F. Codd of IBM. Based on mathematical set theory and represents data as independent relations.
Relation (AKA Table)
Matrix composed of intersecting rows and columns.
Tuple
Each row in a relation in a database.
Relational Database Management System (RDBMS)
Collection of programs that manages a relational database. Translates user’s logical requests (queries) into commands that physically locate and retrieve requested data.
Relational Diagram
A representation of the relational database’s entities, the attributes within those entities, and the relationships between those entities.
Entity Relationship (ER) Model
A data model that describes relationships among entities at the conceptual level with help of ER diagrams. Developed by P. Chen in 1975.
3 Vs
Three basic characteristics of Big Data databases: Volume, Velocity, and Variety
American National Standards Institute (ANSI)
The group that accepted the DBTG (Database Task Group) recommendations and augmented database standards in 1975 through its SPARC committee.