Chapter 5 Database Processing
No, Drew, You Don t Know Anything About Creating Queries." AllRoad Parts operational database used to determine which parts to consider for 3D printing. If Addison and Drew depend on Lucas (or IT dept) to produce reports, they will (a) wait a long time and (b) probably not get what they want. Once they get data, Addison create queries and reports without help from Lucas. Relying on own skills gives more freedom and better results. Relational database technology not appropriate for 3D parts files or graphics used for query-by-graphics. MongoDB a better choice. 5-2
Study Questions Q1: What is the purpose of a database? Q2: What is a database? Q3: What is a database management system? Q4: How do database applications make databases more useful? Q5: How are data models used for database development? Q6: How is a data model transformed into a database design? Q7: What is the users role in the development of databases? Q8: 2024? 5-3
Q1: What Is the Purpose of a Database? Organize and keep track of things Keep track of multiple themes General rule: Single theme - store in a spreadsheet Multiple themes - use a database 5-4
A List of Student Grades Presented in a Spreadsheet Single Theme 5-5
Student Data Form With Multiple Themes 5-6
Q2: What Is a Database? 5-7
Hierarchy of Data Elements 5-8
Components of a Database 5-9
Example of Relationships Among Rows 5-10
Sample Metadata (in Access) 5-11
Ethics Guide: Querying Inequality? MaryAnn has a data mart. Business professional majored in HR, now "expert" in SQL. Uses SQL to do her job faster and better. What are your personal, professional, social responsibilities? 5-12
Ethics Guide: Querying Inequality? (cont d) You can query databases to learn all sorts of patterns and trends. Be sure what answers you want before starting query. How strongly do you feel about social and personal responsibility, considering your needs and those of your family? How important is social responsibility posture of an employer to you? Is that something you want to add to your criteria for finding a job? 5-13
Q3: What Is a Database Management System (DBMS)? Program used to create, process, and administer a database. Licensed from vendors such as IBM, Microsoft, Oracle, and others. DB2 from IBM, Access and SQL Server from Microsoft, Oracle Database from Oracle Corporation. MySQL - open source, license-free for most applications. 5-14
Processing the Database Four DBMS operations 1. Read 2. Insert 3. Modify 4. Delete data 5-15
Processing the Database Structured Query Language - SQL (see-quell) International standard Used by most popular DBMS INSERT INTO Student ([Student Number], [Student Name], HW1, HW2, MidTerm) VALUES (1000, Franklin, Benjamin, 90, 95, 100) 5-16
Administering the Database Used to set up a security system involving user accounts, passwords, permissions, and limits for processing. Permissions can be limited in very specific ways. Backing up database data, adding structures to improve performance of database applications, removing unwanted data. 5-17
Summary of Database Administration Tasks 5-18
Summary of Database Administration Tasks (cont'd) 5-19
Elements of Database Applications Forms Reports View data;, insert new, update existing, and delete existing data Structured presentation of data using sorting, grouping, filtering, and other operations Queries Application Programs Search based upon data values provided by the user Provide security, data consistency, and special purpose processing, e.g., handle out-of-stock situations 5-20
Using MIS InClass 5: How Much Is a Database Worth? Data has resale value. Data on everything customers do. Use to target customers for offerings they care about, and avoid those they don t. Costly and difficult to replace data collected over many years. 5-21
Q4: How Do Database Applications Make Databases More Useful? 5-22
Example of a Student Report 5-23
Query Example 5-24
Browser Forms, Reports, Queries, and Applications 5-25
Account Creation Browser Form 5-26
Browser Report 5-27
Multi-User Processing Problem 1. Process A reads customer record from file containing customer s account balance. 3. Process A updates account balance in its copy of customer record and writes record to file. 5. Process B writes stale account balance value to file, causing changes made by Process A to be lost. 1 2 3 4 5 2. Process B reads same record from same file now has its own copy. 4. Process B has original stale value for account balance. Updates customer s phone number and writes customer record to file. 5-28
Q5: How Are Data Models Used for Database Development? 5-29
Components of the Entity-Relationship Data Model Entities Attributes Identifier Something users want to track Order, customer, salesperson, item, volunteer, donation Describe characteristics of an entity OrderNumber, CustomerNumber, VolunteerName, PhoneNumber Uniquely identifies one entity instance from other instances Student_ID_Number 5-30
Student Data Model Entities 5-31
Example of Department, Adviser, and Student Entities and Relationships (cont'd) 5-32
Sample of Relationships Version 1 Crow s Feet 1:N One department can have many advisers, but an adviser may be in only one department N:M An Adviser ma have many students, and one student may many advisers 5-33
Sample of Relationships Version 2 Crow s Foot N:M A department has many advisors, and an advisor may advise for more than one department 1:N A student has only one advisor, but an adviser may advise many students 5-34
Crow s-foot Diagram Version Maximum cardinality maximum number of entities involved in a relationship. Vertical bar on a line means that at least one entity is required. Minimum cardinality minimum number of entities in a relationship. Small oval means entity is optional; relationship need not have an entity of that type. 5-35
Q6: How Is a Data Model Transformed into a Database Design? Normalization Converting poorly structured tables into two or more wellstructured tables. Goal Construct tables with data about a single theme or entity. Purpose To minimize data integrity problems. 5-36
Data Integrity Problems Data integrity problems produce incorrect and inconsistent information, users lose confidence in information, and the system gets a poor reputation. Can only occur if data are duplicated. 5-37
Poorly Designed Employee Table Causes Data Integrity Problem 5-38
Two Normalized Tables Single Themes 5-39
Summary of Normalization 5-40
Representing 1:N Relationships 5-41
Representing an N:M Relationship: Strategy for Foreign Keys 5-42
Q7: What Is the Users Role in the Development of Databases? Users are the final judges of: What data database should contain. How tables should be related. Users review data model to ensure it accurately reflects users view of the business. Mistakes will come back to haunt them. 5-43
Q8: 2024? Volume of database data will continue to grow, probably exponentially. Cheap, unlimited storage space and greater processing speeds do in relational databases. Relational model is not needed, not natural fit with business documents. Store new types of data such as images, audios, and videos. 5-44
Q8: 2024? (cont'd) More reliance on open source community. Many NoSQL databases will exist. New opportunities and career paths will develop around NoSQL databases. 5-45
Q8: 2024? (cont'd) NoSQL DBMS (Not Relational DBMS) Supports very high transaction rates. Relatively simple data structures. Replicated on many servers in the cloud. Examples Dynamo (Amazon) Bigtable (Google) Cassandra (Facebook) 5-46
Q8: 2024? (cont'd) Will NoSQL Replace Relational DBMS Products? Conversion very expensive and disruptive. Very technical, limited to those with a deep background in computer science. Requires years of training to use. Organization may choose NoSQL products for specialized applications. 5-47
Guide: No, Thanks, I ll Use a Spreadsheet Construct a data model and have users validate it. Design database. Implement database, and fill it with data. Design, build, and test database applications. Write procedures. Train users. Maintain system. 5-48
Guide: No, Thanks, I ll Use a Spreadsheet (cont'd) Databases take time to build. Complicated to operate. Need IS people to create and keep them running. Salesman doesn t want to share data. Spreadsheets sometimes better option, especially if data needs are simple. 5-49
Guide: Immanuel Kant, Data Modeler Perception of reality is based on our perceptive apparatus. Brain processes perceptions into something meaningful. Human s model what appears to be. Users must determine if a data model fits their perception of reality. 5-50
Active Review Q1: What is the purpose of a database? Q2: What is a database? Q3: What is a database management system? Q4: How do database applications make databases more useful? Q5: How are data models used for database development? Q6: How is a data model transformed into a database design? Q7: What is the users role in the development of databases? Q8: 2024? 5-51
Case Study 5: Fail Away with Dynamo, Bigtable, and Cassandra Current relational DBMS products not designed for large, multi-server systems. NoSQL databases Dynamo, Bigtable, Cassandra. Amazon: Dynamo. Google: Bigtable processes petabytes of data on hundreds of thousands of servers. Both created to be elastic. Cassandra used by Facebook, Twitter, Digg, Reddit. 5-52
5-53