Please enable JavaScript.
Coggle requires JavaScript to display documents.
Week Three: Chapter Five: Database Processing (5.4 What are non…
Week Three:
Chapter Five: Database Processing
5.1 What is a database?
Database:
self-describing collection of integrated records
In databases:
bytes are grouped into
columns / fields
columns / fields are grouped into
rows / records
group of similar rows / records is called a
table / file
Hierarchy of Data Elements
Table / File
Records / Rows
Fields / Columns
Bytes / Characters
Relationship Among Rows
KEY:
is a column or group of columns that identify a unique row in a table
every table has to have a key
it is the row that cannot have the number in that column appear more than once
Types of Key
Foreign Key:
key columns but they are keys in a different table than which they reside in - that column did not originate form that table
Relational Databases:
databases that carry their data in the form of tables and that represent relationships using foreign keys
Byte:
character of data
Purpose of a Database
help people keep track of things
keep track of multiple themes
general rule: single theme (spreadsheet), multiple themes (use database)
Components of a database
Tables / Files
+
Relationship among rows in tables
+
Metadata
= DATABASE
WHAT IS SELF-DESCRIBING?
database contains, within itself, a description of contents through
metadata
describes what Is in the database
Metadata:
data that describes data
5.2 What is a Database Management System (DBMS)?
Database Management System (DBMS):
software program used to create, process and administer a database
Functions of the DBMS
1. Creating the database and its structures
Database developers use the DBMS to create tables, relationships and other structures in the database
2. Processing the database
DBMS provides applications for
four processing operations:
Read
Insert (e.g. through SQL)
Modify (e.g. through SQL)
Delete Data
Structured Query Language (SQL):
international language for processing a database
3. Administering the database
Development:
specify requirements, validate data model
Operation:
manage security, track problems and manage resolution, monitor database performance
Backup and Recovery:
monitor backup procedures, conduct training, manage recovery
Adaptation:
set up request tracking system, manage configuration change
5.3 How do database applications make databases more useful?
Database Application:
collection of forms, reports, queries, and application programs that serves as an intermediary between users and database data
reformat database table data to make it more informative and easily updated
provide security, maintain data consistency and handle special cases
Purposes of the four elements in database applications
Forms:
view data, insert new, update existing, and delete existing
Reports:
structured presentation of data using sorting, grouping, filtering and other operations
Queries:
search based on data values provided by the user
Application programs:
provide security, data consistency, and special purpose processing
Traditional (Thick-Client) Database Applications
Thick applications that need to be installed on a user's computer
application resides on a server computer
application logic is contained in a program on users' computers and the server does nothing except run the DBMS and serve up data
Thin-Client Database Applications
code for generating and processing the application elements is shared between the users' computer and the server
more dynamic content
browser based applications can support traditional queries
graphical queries:
which query criteria are created when the user clicks on a graphic
security requirements are more stringent for thin-client applications (major function)
Multi User Processing
most traditional and thin-client applications involve users processing the same database
lost update problem:
where two users update the same data item but only one of those changes is recorded in the data
RESOLUTION:
locking used to coordinate the activities of users who know nothing about each other
5.4 What are non-traditional DBMS products?
Relational model had limited storage space and processing
THE NEED FOR NON-TRADITIONAL DBMS PRODUCTS IS BECAUSE:
Need to store new data types differently:
traditional relational DBMS product devote considerable code and processing power to support ACID ( atomic, consistent, isolate, durable) transactions
either all of a transaction is processed or none of it is - need to now be able to process parts of a transaction
Need for faster processing using many servers:
need to gain faster performance using many servers
Other people such as Facebook has created it and made it open source
NON-TRADITIONAL DBMS TYPES
NoSQL DBMS:
refers to new DBMS products that support very high transaction rates processing relatively simple data structures, replicated on many servers in the cloud, without ACID transaction support
NewSQL DBMS:
process very high levels of transactions, like NoSQL DBMS but provide ACID support.
In-memory DBMS:
consists of DBMS products that process databases in main memory