Relational Database Fundamentals
# Database
= Maintains
information about various types of objects (inventory), events
(transaction), people (employees), and places (warehouse).
~ Database model :
> Hierarchical database model
= Information is organized into a
tree-like structure (using parent and child relationships) in such way
that it cannot have too many relationships.
> Network database model
= A flexible way of representing objects and their relationships.
> Relational database model
= Stores information in the form of logically related two-dimensional tables.\
# Entities and Attributes
~ Entity
= A person, place thing, transaction or event about which information is stored.
- The rows in each table contain the entities.
~ Attributes ( fields, columns)
=Characteristics or properties of an entity class.
- The columns in each table contain the attributes.
# Keys and Relationships
Primary keys and foreign keys identifies the various entity classes (tables) in the database.
~ Primary key
= A field ( or group of fields) that uniquely identifies a given entity in a table.
~ Foreign key
= A primary key of one table that
appears an attribute in another table and acts to provide a logical
relationship among the two tables.
- Potential relational database for Coca-Cola.
# Relational Database Advantages
~ Increased flexibility
- A well-designed database should :
- Handle changes quickly and easily
- Provide users with different views.
- Have only one physical view
* Physical view - Deals with the physical storage of information on a storage device.
- Have multiple logical views
* logical view - Focuses on how users logically access information.
~ Increased Scalability and Performance
- A database must scale to meet increased demand, while maintaining acceptable performance levels.
- Scalability - Refers to how well a system can adapt to increased demands
- Performance - Measures how quickly a system performs a certain process or transaction.
~ Reduced Information Redundancy
- Redundancy
= The duplication of information or storing the same information in multiple places.
- Inconsistency is one of the primary problems with redundant information.
~ Increase Information Integrity (quality)
- Information integrity
= Measures the quality of information
- Integrity Constraint
= Rules that help ensure the quality of information
- Relational Integrity Constrain
* Rule that enforces basic and fundamental information-based constraints.
- Business-critical integrity constraint
* Rule that enforce business rules vital to an
organization's success and often require more insight and knowledge than
relational integrity constraints.
~ Increased Information Security
- Information is an organizational asset and must be protected.
- Databases offer several security features :
- Password - provides authentication of the user
- Access level - Determines who has access to the different types of information.
- Access control - Determines types of user access, such as read-only access.
# Database Management Systems (DBMS)
= Software through which users and application programs interact with a database.
# Data-Driven Web Sites
= An interactive Web site kept constantly updated and relevant to the needs of its customers through the use of a database.
- Advantages of Data-driven Web Site
> Development
= Allows the Web site owner to make
changes any time and without have to rely on a developer or knowing HTML
programming. A well-structured, data-driven Web site enables updating
with little or no training.
> Content Management
= A static Web site requires a
programmer to make updates. This adds an unnecessary layer between the
business and its Web content, which can lead to misunderstandings and
slow turnarounds for desired changes.
> Future Expandability
= Having a data-driven Web site
enables the site to grow faster than would be possible with a static
site. Changing the layout, displays, and functionality of the site (
adding more features and sections) is easier with a data-driven
solution.
> Minimizing Human Error
= Even the most
competent programmer charged with the task of maintaining many pages
will overlook things and make mistakes. This will lead to bugs and
inconsistencies that can be time consuming and expensive to track down
and fix. Unfortunately. users who come across these bugs will likely
become irritated and may leave the site. A well-designed data-driven Web
site will have " error trapping" mechanisms to ensure that required
information is filled out correctly and that content is entered and
displayed in its correct format.
> Cutting Production and Update Costs
= A data-driven Web site can be
updated and "published" by any competent data entry or administrative
person. In addition to being convenient and more affordable, changes and
updates will take a fraction of the time that they would with a static
site. While training a competent programmer can take months or even
years, training a data entry person can be done in 30 to 60 minutes.
> More Efficient
= By their very nature, computers are
excellent at keeping volumes of information intact. With
data-driven solution, the system keeps track of the templates. Global
changes to layout, navigation or site structure would need to be
programmed only once, in one place and the site itself will take care of
propagating those changes to the appropriate pages and ares. A
data-driven infrastructure will improve the reliability and stability of
a Web site, while greatly reducing the chance of " breaking" some part
of the site when adding new areas.
> Improved Stability
= Any programmer who has to update a
Web site from "static" templates must be very organized to keep track of
all the sources files. If a programmer leaves unexpectedly, it could
involve recreating existing work if those source files cannot be found.
Plus, if there were any changes to the templates, the new programmer
must be careful to use only the latest version. With a data-driven Web
site. you does not have to worry because the content will never lost.
# Data-Driven Business Intelligence
# Integrating Information among Multiple Databases.
- Integration
= Allows separate systems to communicate directly with each other.
> Forward integration
= Takes information entered into a given system and sends it automatically to all downstream systems and processes.
> Backward integration
= Takes information entered into a given system and sends it automatically to all upstream systems and processes.
- Building a central repository specifically for integrated information
No comments:
Post a Comment