Database Design Chapter 2 Data Models
Model
Abstraction of a real-world object or event.
Attributes
Describe the properties of an object.
Data modeling
Iterative and progressive process of creating a specific data model for a determined problem domain.
NoSQL databases
Not based on relational model, support distributed database architectures. Provide high scalability, high availability, and fault tolerance.
End-user interface
Allows end user to interact with the data.
Importance of data models
Are a communication tool, give overall view of the database, organize data for various users, are an abstraction for the creation of good database.
Conceptual schema
Basis for the identification and high-level description of the main data objects. Has micro-level view of data environment. Software and hardware independent.
Entity names- required to:
Be descriptive of the objects in the business environment. Use terminology that is familiar to the users.
Business rules
Brief, precise, and unambiguous description of a policy, procedure, or principle. Enable defining the basic building blocks. Describe main and distinguishing characteristics of the data.
Physical independence
Changes in physical model do not affect internal model.
Logical independence
Changing internal model without affecting the conceptual model.
Attribute
Characteristics of an entity.
Class
Collection of similar objects with shared structure and behavior organized in a class hierarchy.
Sources of business rules
Company managers, policy makers, department managers, written documentation, direct interviews with end users.
NoSQL disadvantages
Complex programming is required. There is no relationship support. There is no transaction integrity support.
Schema
Conceptual organization of the entire database as viewed by the database administrator.
Network advantages
Conceptual simplicity, handles more relationship types. Data access is flexible. Data owner/member relationship promotes data integrity, conformance to standards. Includes data definition language and data manipulation language.
Objects
Contains data and their relationships with operations that are performed on it. Basic building block for autonomous structures. Abstraction of real-world entity.
Relationship
Describes an association among entities. One-to-many, many-to-many, one-to-one.
Unified Modeling Language UML
Describes sets of diagrams and symbols to graphically model a system.
Collection of tables stored in the database:
Each table is independent from another. Rows in different tables are related based on common values in common attributes.
Schema data definition language DDL
Enables the database administrator to define the schema components.
External model
End user's view of the data environment. ER diagrams are used to represent the external views.
Data manipulation language DML
Environment in which data can be managed and is used to work with the data in the database.
Segments
Equivalent of a file system's record type.
SQL engine
Executes all queries
Proper naming
Facilitates communication between parties. Promotes self-documentation.
Big Data aims to:
Find new and better ways to manage large amounts of web and sensor-generated data. Provide high performance and scalability at a reasonable cost. Volume, velocity, and variety.
Entity relationship diagram
Graphical representation of entities and their relationships in a database structure. Uses graphics representations to model database components
Big Data new technologies
Hadoop, MapReduce, Hadoop Distributed File System HDFS, NoSQL.
Reasons for identifying and documenting business rules
Help standardize company's view of data. Communications tool between users and designs.
NoSQL advantages
High scalability, availability, and fault tolerance are provided. Uses low-cost commodity hardware. Support Big Data. Key-value model improves storage efficiency.
Questions to identify the relationship type
How many instances of B are related to one instance of A? How many instances of A are related to one instance of B?
Entity relationship model disadvantages
Limited constraint representation and relationship representation. No data manipulation language. Loss of information content occurs when attributes are removed from entities to avoid crowded displays.
Physical model
Lowest level of abstraction. The way data is saved on storage media. Requires definition of physical storage. Aimed at logical level, physical-level details not required.
Hierarchal models
Manages large amounts of data for complex manufacturing projects. Represented by an upside-down tree which contains segments. Depicts one-to-many relationships.
Extensible Markup Language XML
Manages unstructured data for efficient and effective exchange of all data types.
Relation or table
Matrix composed of intersecting tuple/rows and attribute/columns.
Translating business rules into data model components
Nouns translate into entities. Verbs translate into relationships among entities. Relationships are bidirectional.
Inheritance
Objects inherits methods and attributes of parent class.
Relational model database system RDBMS
Performs basic functions provided by the hierarchal and network DBMS systems. Makes relational data model easier to understand and implement. Hides the complexities of the relational model from the user.
Subschema
Portion of the database seen by the application programs that produce the desired information from the data within the database.
Relational model
Produced an automatic transmission database that replaced standard transmission databases. Describes a precise set of data manipulation constructs.
Hierarchal advantages
Promotes data sharing, parent/child relationship promotes conceptual simplicity and data integrity. Database security is provided and enforced by DBMS. Efficient with one-to-many relationships.
Network models
Represent complex data relationships. Improve database performance and impose a database standard. Depicts one-to-many and many-to-many relationships.
Attribute name
Required to be descriptive of the data represented by the attribute.
Hierarchal disadvantages
Requires knowledge of physical data storage characteristics. Navigational system requires knowledge of hierarchical path. Changes in structure require changes in all application programs. Implementation limitations. No data definition. Lack of standards.
Relational model disadvantages
Requires substantial hardware and system software overhead. Conceptual simplicity gives untrained people the tools to use a good system poorly. May promote information problems.
Class hierarchy
Resembles an upside-down tree in which each class has only one parent.
Entity instance or entity occurence
Rows in a relational table
Object-oriented model advantages
Semantic content is added, visual representation includes semantic content, inheritance promotes data integrity.
Constraint
Set of rules to ensure data integrity.
Data models
Simple representations of complex real-world data structures. Useful for supporting a specific problem domain.
Object-oriented model disadvantages
Slow development of standards caused vendors to supply their own enhancements. Complex navigational system, learning curve is steep, high system overhead slows transactions.
External schema
Specific representation of an external view.
Internal schema
Specific representation of an internal model. Uses database constructs supported by the chosen database. Software and hardware independent.
Relation model advantages
Structural independence is promoted using independent tables. Tabular view improves conceptual simplicity. Ad hoc query capability is based on SQL. Isolates the end user from physical-level details. Improves implementation and management simplicity.
Extended relational data model
Supports OO features and complex data representation. Focuses on better data management.
Network model disadvantages
System complexity limits efficiency. Navigational system yields complex implementation, application development, and management. Structural changes require changes in all application programs.
Connectivity
Term used to label the relationship types.
Business rules allow designer to:
Understand nature, role, scope of data, and business processes. Develop appropriate relationship participation rules and constraints. Create an accurate data model.
Entity
Unique and distinct object used to collect and store data.
Entity relationship model advantages
Visual modeling yields conceptual simplicity. Visual representation makes it an effective communication tool. Is integrated with the dominant relational model.
Big data challenges
Volumes does not allow the usage of conventional structures, expensive, and OLAP tools proved inconsistent dealing with unstructured data.