Ch.5
Summary
Databases are widely used. They make for easy
access and traceability. A database model should be made before the
construction of the database since it’s easier to make changes to the data
before its construction. There are many factors that go into the database, so
there’s been three new categories of database management systems created.
Q5-1 What Is the Purpose of a Database?
Databases
are used to keep track of multiple things for easy access.
Q5-2 What is a database
Database is
a collection of integrated records that can be broken down as followed: byte
(character of data), columns/fields (grouped bytes), rows/records
(grouped fields), table/file (grouped rows). A database shows the records and
the relationships within those records.
Relationships Among Rows
Rows from
one table can relate to rows in another table and every table must have key. A key/primary
key can be group of columns that identify a unique row in a table. A foreign
key are keys of a different table than the one in which they reside. A relational
database carries its data in the form of tables that represent relationships
of the data using foreign keys.
Metadata
Metadata/field
properties can be defined as data that describes data and can have
different formats. Metadata eliminates guessing and remembering.
Q5-3 What is a Database Management
System (DBMS)?
Database
Management System (DBMS) is typically a software program acquired from a
vendor used to create, process, and administer a database. Many vendors include
IBM (DB2), Microsoft (Access and SQL Server), Oracle (Oracle Database), and
MySQL. DBMS has three functions: creating the database and its structures,
processing the database, and administering the database.
Creating the Database and Its Structures
DBMS are
used by database developers to create tables, relationships, and structures
within the database using metadata. It is easy to make changes.
Processing the Database
A DBMS
provides services for 4 processing operations to assist with processing complex
databases: to read, insert, modify, or delete data. Many DBMS products utilize Structured
Query Language (SQL) which is an international standard language for
processing a database. SQL is also used to create databases and database
structures.
Administering the Database
This
involves many tasks such as: setting up security systems (user accounts,
passwords, permission, etc), backing up database data, adding structures to
improve performance of applications, and removing unwanted data.
Q5-4 How Do Database Applications Make
Databases More Useful?
Database
Applications make table data informative and easily updated using forms
(view data, insert new, update existing, delete existing), reports
(structured presentation of data), queries (search based on data values
provided by the user), and application programs (provide security, data
consistency, and special purpose processing).
Traditional Forms, Queries, Reports, and
Application Programs
Traditional
forms typically appear in window-like display to view/insert/modify/delete
data. Traditional reports are statistic displays of data formatted in a
meaningful way to the user. Traditional database application programs are thich
applications installed on computers and are written in object oriented
languages (C++/VisualBasic).
Browser Forms, Reports, Queries, and
Applications
These are
displayed and processed using html, html5, css3, and JavaScript. A graphical
query is when query criteria are created when the user clicks on a graphic.
Browser applications are very vulnerable and lack security.
Multi-user Processing
Multiple
users process the same database in most traditional and browser-based
applications; it’s common. Its main problem is lost-update problem;
solution: some type of locking should be used to coordinate activities of the
users
Q5-5
How Are Data Models Used for Database Development?
Database structures
can be complex, so before constructing the database developers create a data
model (logical rep. of database data i.e. blueprint)
What is
the Entity-Relationship Data Model?
E-R
is a tool for constructing data models by describing the content of a data
through defining of entities and their relationships. Unified Modeling
Language (UMI) is a less popular tool for data modeling. Entity is a
thing that you want to track; each entity has attributes, which are
characteristics that describe the entity. An attribute or group of attributes
that is only associated with one entity instance is called an Identifier.
Three types of relationships: 1-to-1 (1:1 ex. marriage), 1-to-many
(1:N ex. one department, many advisors), Many-to-many (N:M ex. advisors,
students)
Q5-6
How is Data Model Transformed into a Database Design?
Database
design is converting a data model into tables, relationships, and data
constraints. It also changes entities into tables and express relationships by
defining foreign keys. It’s complicated like data modeling.
Normalization
Converting a poorly structured table into two or more
well-structured tables is called Normalization; it’s easy for a table to
become malformed. Goal: Construct tables
with single theme or entity. Purpose: Minimize data integrity problems. An example of
a Data Integrity Problem is when some rows state that the name of
Department 100 is “Accounting and Finance” while another row would state that
Department 100’s name is “Accounting”. These
problems are serious because these tables will produce incorrect and
inconsistent results, but they occur only if data is duplicated. Databases
classify tables into normal forms depending on the type of problems they
have.
Representing
Relationships: Using foreign keys to create a relationship between two or
more tables; linking data.
Users’ Role
in the Development of Databases
A database
is a model of how users view their business world, which means they have the
final say in what data should be contained in the database and how the records
relate to one another. The data modeling stage is the easiest time to change
the database structure.
Q5-7
How Can Falcon Security Benefit from a Database System?
They benefit
by having an easier way to locate specific data in a shorter time-period and be
able to leave comments after analyzing the data. For example, finding videos by
querying their characteristics. Falcon could use MongoDB, which is an
open source document-oriented DBMS that stores video footage in the same
database as the metadata or they can just build an Access database to store the
metadata.
Q5-8
2026?
Volume of
database continues to grow. Cheap, unlimited storage, greater
processing speeds do in relational databases. Security becomes more
important. ACID: Atomic, Consistent, Isolated, Durable transactions, Critical
to traditional commercial applications and new Internet applications (Twitter)
don’t need ACID. Many NoSQL, NewSQL, and
in-memory databases exist in commerce. NoSQL DBMS (NotRelational
DBMS) new DBMS products, support high transaction rates processing simple data
structures, replicated on many servers in the cloud, no ACID transaction
support. Ex: MongoDB, Cassandra, Bigtable, Dynamo. NewSQL DBMS: process
high transaction level. Provides ACID support, may or may not support
relational model. Hotbed of development with new vendors. In-Memory DBMS:
process databases in main memory, they usually support or extend the relational
model. High volume ACID transaction support with complex relational query
processing. Ex: SAP HANA, Tableau Software.
Three
Things I learned
1) The
purpose of a database is to organize and keep track of things such as keeping
track of multiple themes. The general rule is that when you have a single
theme, you store it in a spreadsheet and when you have multiple themes, then
you use a database. Examples of themes are student grades, student emails, and student
office visits.
2) Using
normalization, each entity will be represented with a table, where the entity
identifier becomes the table key and the entity’s attributes become table
columns. One will normalize the tables as needed. The database will use foreign
keys to represent relationships. However, one will need to add additional tables
for many-to-many relationships.
3) I
didn’t realize how important the users are to developing the database. Users
are the “final judges”; they decide what kind of data the database will consist
of. Thorough the review of a data model, entities must contain all the data users
need to do their jobs and must accurately reflect their view of the business.
If the wrong data model is used, then the applications will be hard to use.
No comments:
Post a Comment