Introduction to Database Management

Slides:



Advertisements
Similar presentations
Lecture-7/ T. Nouf Almujally
Advertisements

Management Information Systems, Sixth Edition
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 1 Introduction to Database Management.
Organizing Data & Information
Chapter 4: Database Management. Databases Before the Use of Computers Data kept in books, ledgers, card files, folders, and file cabinets Long response.
Introduction to Database Management
Chapter 1 Introduction to Databases
Lecture-8/ T. Nouf Almujally
Chapter 1 Introduction to Database Management. McGraw-Hill/Irwin © 2004 The McGraw-Hill Companies, Inc. All rights reserved. Welcome! Database technology:
IT – DBMS Concepts Relational Database Theory.
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Course Introduction Introduction to Databases Instructor: Joe Bockhorst University of Wisconsin - Milwaukee.
The McGraw-Hill Companies, Inc Information Technology & Management Thompson Cats-Baril Chapter 3 Content Management.
Web-Enabled Decision Support Systems
Fundamentals of Information Systems, Fifth Edition
1 INTRODUCTION TO DATABASE MANAGEMENT SYSTEM L E C T U R E
Organizing Data and Information AD660 – Databases, Security, and Web Technologies Marcus Goncalves Spring 2013.
Introduction to Database Management. 1-2 Outline  Database characteristics  DBMS features  Architectures  Organizational roles.
Dr. Mohamed Osman Hegazi 1 Database Systems Concepts Database Systems Concepts Course Outlines: Introduction to Databases and DBMS. Database System Concepts.
Lecture2: Database Environment Prepared by L. Nouf Almujally & Aisha AlArfaj 1 Ref. Chapter2 College of Computer and Information Sciences - Information.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
5-1 McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved.
Lecture2: Database Environment Prepared by L. Nouf Almujally 1 Ref. Chapter2 Lecture2.
5 - 1 Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved.
Management Information Systems, 4 th Edition 1 Chapter 8 Data and Knowledge Management.
Database Systems Lecture 1. In this Lecture Course Information Databases and Database Systems Some History The Relational Model.
Foundations of Information Systems in Business
Fundamentals of Information Systems, Sixth Edition Chapter 3 Database Systems, Data Centers, and Business Intelligence.
INTRODUCTION TO INFORMATION SYSTEMS LECTURE 9: DATABASE FEATURES, FUNCTIONS AND ARCHITECTURES PART (2) أ/ غدير عاشور 1.
Data Resource Management Data Concepts Database Management Types of Databases Chapter 5 McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies,
© 2017 by McGraw-Hill Education. This proprietary material solely for authorized instructor use. Not authorized for sale or distribution in any manner.
Database Principles: Fundamentals of Design, Implementation, and Management Chapter 1 The Database Approach.
Management Information Systems by Prof. Park Kyung-Hye Chapter 7 (8th Week) Databases and Data Warehouses 07.
Systems Analysis and Design in a Changing World, Fifth Edition
Database Systems: Design, Implementation, and Management Tenth Edition
Introduction To DBMS.
Fundamentals of Information Systems, Sixth Edition
An Introduction to database system
Chapter 1: Introduction
Chapter 2 Database System Concepts and Architecture
Database System Concepts and Architecture
Fundamentals of Information Systems
Foundations of Information Systems in Business
Information Systems Today: Managing in the Digital World
Fundamentals of Information Systems, Sixth Edition
Fundamentals & Ethics of Information Systems IS 201
Chapter Ten Managing a Database.
9/22/2018.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Chapter 2: Database System Concepts and Architecture
Database Management System (DBMS)
Chapter 2 Database Environment Pearson Education © 2009.
Chapter 2 Database Environment.
MANAGING DATA RESOURCES
Chapter 1 Database Systems
File Systems and Databases
Introduction to Databases Transparencies
Chapter 1: The Database Environment
MANAGING DATA RESOURCES
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Chapter 1 Database Concepts.
Chapter 1 Database Systems
Database and Database Management System (DBMS)
Database Management Systems
Chapter 2 Database Environment Pearson Education © 2009.
The Database Environment
MIS 385/MBA 664 Systems Implementation with DBMS/ Database Management
CHAPTER 5 THE DATA RESOURCE
Presentation transcript:

Introduction to Database Management Chapter 1 Introduction to Database Management Welcome to the second edition Textbook: Database Design, Application Development and Administration Chapter 1 objectives: Describe the characteristics of business databases and the features of database management systems Appreciate the advances in database technology and the contribution of database technology to modern society Understand the impact of database management system architectures on distributed processing and software maintenance Perceive career opportunities related to database application development and database administration

Welcome! Database technology: crucial to the operation and management of modern organizations Major transformation in computing skills Significant time commitment Exciting journey ahead Welcome to Chapter 1 on introduction to database management Database management is crucial to the operation and management of modern organizations: - infrastructure (plumbing) for daily business operations - raw materials for long range decision making Transformation: as significant as learning computer programming and algebra Time: assignments and projects; lots of practical skills; detailed textbook Database field: - Many employment opportunities with good pay; - Challenging work (sometimes too challenging); - Very dynamic field: much new R & D

Book Goals First course in database management Practical textbook Fundamentals of relational databases Data modeling and normalization Database application development Database administration and database processing environments Detailed material Textbook for first course in database management - Designed for students without an previous course in database management - Beneficial even for those with significant database experience First part of text: Overview of database management and overview of database development Second part: fundamentals of relational databases; Relational data model, SQL, basic query formulation skills; Third part of text: data modeling and conversion; developing a database; skill used by database specialist or functional user developing a database Fourth part: relational database design involving normalization and physical database design Fifth part: application development emphasis; advanced query formulation skills; data requirements for forms/reports; triggers and stored procedures; Sixth part: advanced database development with view integration (linking database design and application development); comprehensive case Seventh part of textbook: background on database administration and specialized processing area (transaction management, data warehouses, distributed processing, object data management) Detailed material: developing skills requires lots of practice Not a theoretical textbook (does not prove theorems nor present any axioms)

Outline Database characteristics DBMS features Architectures Organizational roles Chapter 1 material: general background for the entire textbook Essential characteristics of databases Features: found in most DBMSs (desktop and enterprise) Architectures: background for application development and distributed processing with databases Organizational roles: how you might be using a DBMS

Initial Vocabulary Data: raw facts about things and events Information: transformed data that has value for decision making Essential to organize data for retrieval and maintenance Most organizations have a flood of data (too much data is the problem); web proliferation has greatly multiplied the amount of data Conventional facts: names, DOBs, salaries, interest rates, codes (major) Unconventional facts: images, engineering drawings, maps, product videos, fingerprints, time series (useful for forecasting), web page Distinction sometimes made between data and information: raw facts need interpretation, combination, formatting, etc. to be useful for decision making

Database Characteristics Persistent Inter-related Shared Database is a generic term; collection of data Databases are ubiquitous; many encounters this week Persistent: - Lasts a long time (not transient) - Lasts longer than the execution of a computer program - Program variables are not stored in a database - Relevance of intended usage: only store potentially relevant data Inter-related: - Entity: cluster of data about a topic (customer, student, loan) - Relationship: connection among entities Shared: - Multiple uses: hundreds to thousands of data entry screens and reports - Multiple users: many people simultaneously use a database

University Database To depict these characteristics, let us consider a number of databases. We begin with a simple university database (Figure 1) since you have some familiarity with the workings of a university. A simplified university database contains data about students, faculty, courses, course offerings, and enrollments. The database supports procedures such as registering for classes, assigning faculty to course offerings, recording grades, and scheduling course offerings. Relationships in the university database support answers to questions such as ·         What offerings are available for a course in a given academic period? ·         Who is the instructor for an offering of a course? ·         What students are enrolled in an offering of a course?

Water Utility Database

Database Management System (DBMS) Collection of components that support data acquisition, dissemination, storage, maintenance, retrieval, and formatting Enterprise DBMSs Desktop DBMSs Embedded DBMSs Major part of information technology infrastructure DBMS (Database Management System): collection of components (mostly software) Enterprise DBMS: supports mission critical information systems; very large dbs, many users, tight performance requirements Desktop DBMS: end user departments and small databases Embedded DBMS: resides in a larger system, either an application or a device such as a Personal Digital Assistant or smart card. Embedded DBMSs provide limited transaction processing features but have low memory, processing, and storage requirements. Features common to most DBMSs: database definition, non procedural access, application development, procedural language interface, transaction processing

Database Definition Define database structure before using a database Tables and relationships SQL CREATE TABLE statement Graphical tools Fundamental difference to other productivity software: amount of planning before using; defined database before using Table: 2 dimensional arrangement of data; relationship: linking column among tables SQL: industry standard database language

University Database Access relationship window 5 tables (student, enrollment, course, offering, faculty): faculty_1 is not a real table (details later) Relationships: lines connecting tables (faculty to offering); not all tables are directly connected Must define the tables and relationships before entering data and retrieving data

University Database (ERD) University Database diagram drawn with an external tool (Visio Professional); Learn Entity Relationship Diagrams in second part of course - Entity: similar to a table - Relationship: connection among entities with names and connection symbols Can use third party tools for database definition

Nonprocedural Access Query: request for data to answer a question Indicate what parts of database to retrieve not the procedural details Improve productivity and improve accessibility SQL SELECT statement and graphical tools Specify what not how Loop buster: no loops; major difference between procedural and nonprocedural language Trip planning analogy: specify features of trip (destination, quality of accommodations, dates, …) but not details (route, hotel research, flight research, …) Productivity improvement: 100 times fewer lines of code

Graphical Tool for Nonprocedural Access Query Design (Access) - specify tables and columns - Access determines connections among tables

Application Development Form: formatted document for data entry and display Report: formatted document for display Use nonprocedural access to specify data requirements of forms and reports Nonprocedural access by itself is not useful because of default output appearance Nonprocedural access combined with graphical tools for form and report development is very powerful Non-procedural access makes form and report creation possible without extensive coding. As part of creating a form or report, the user indicates the data requirements using a non-procedural language (SQL) or graphical tool. To complete a form or report definition, the user indicates formatting of data, user interaction, and other details.

Sample Data Entry Form Faculty assignment form The form can be used to add new course assignments for a professor and to change existing assignments.

Sample Report The report uses indentation to show courses taught by faculty in various departments. The indentation style can be easier to view than the tabular style shown as default output style.

Procedural Language Interface Combine procedural language with nonprocedural access Why Batch processing Customization and automation Performance improvement Combine external languages (COBOL, Java, C, C++, …) with SQL New DBMS specific languages: PL/SQL (Oracle), Transact-SQL (SQL Server) Batch processing: much business processing is batch (collect loan applications and process together); online processing is becoming more prevalent because of the web; Customization: customize the behavior of a data entry form Automation: rule processing; check qoh when an order is placed Performance: more control with a procedural language

Transaction Processing Transaction: unit of work that should be reliably processed Control simultaneous users Recover from failures Example transactions: ATM, shopping cart Major difference between enterprise and desktop DBMSs: transaction processing ability; major cost difference

Database Technology Evolution The first generation supported sequential and random searching, but the user was required to write a computer program to obtain access. The second generation products were the first true DBMSs as they could manage multiple entity types and relationships. However, to obtain access to data, a computer program still had to be written. Second generation systems are referred to as “navigational” because the programmer had to write code to navigate among a network of linked records. Third generation systems are known as relational DBMSs because of the foundation based on mathematical relations and associated operators. Optimization technology was developed so that access using non-procedural languages would be efficient. Fourth generation systems can store and manipulate unconventional data types such as images, videos, maps, sounds, and animations. Because these systems view any kind of data as an object to manage, fourth generation systems are sometimes called “object-oriented” or “object-relational”. In addition to the emphasis on objects, the Internet is pushing DBMSs to develop new forms of distributed processing.

DBMS Marketplace Enterprise DBMS Desktop DBMS Oracle: dominates in Unix; strong in Windows SQL Server: strong in Windows DB2: strong in mainframe environment Significant open source DBMSs: MySQL, Firebird, PostgreSQL Desktop DBMS Access: dominates FoxPro, Paradox, Approach, FileMaker Pro According to the International Data Corporation (IDC), sales (license and maintenance) of enterprise database software reached $13.6 billion in 2003, a 7.6 % increase since 2002. Enterprise DBMSs use mainframe servers running IBM’s MVS operating system and mid-range servers running Unix (Linux, Solaris, AIX, and other variations) and Microsoft Windows Server operating systems. Sales of enterprise database software have followed economic conditions with large increases during the Internet boom years followed by slow growth during the dot-com and telecom slowdowns. For future sales, IDC projects sales of enterprise DBMSs to reach $20 billion by 2008. According to IDC, three products dominate the market for enterprise database software as shown in Table 1-3. The IDC rankings include both license and maintenance revenues. When considering only license costs, the Gartner Group ranks IBM with the largest market share at 35.7%, followed by Oracle at 33.4%, and Microsoft at 17.7%. The overall market is very competitive with the major companies and smaller companies introducing many new features with each release. Open source DBMS products have begun to challenge the commercial DBMS products at the low end of the enterprise DBMS market. Although source code for open source DBMS products is available without charge, most organizations purchase support contracts so the open source products are not free. Still, many organizations have reported cost savings using open source DBMS products, mostly for non-mission-critical systems. MySQL, first introduced in 1995, is the leader in the open source DBMS market. PostgreSQL and open source Ingres are mature open source DBMS products. Firebird is new open source product that is gaining usage.

Data Independence Software maintenance is a large part (50%) of information system budgets Reduce impact of changes by separating database description from applications Change database definition with minimal effect on applications that use the database Data Independence: a database should have an identity separate from the applications (computer programs, forms, and reports) that use it. The separate identity allows the database definition to be changed without affecting related applications. The close association between a database and related programs led to problems in software maintenance. Software maintenance encompassing requirement changes, corrections, and enhancements can consume a large fraction of computer budgets. In early DBMSs, most changes to the database definition caused changes to computer programs. In many cases, changes to computer programs involved detailed inspection of the code, a labor-intensive process. This code inspection work is similar to year 2000 compliance where date formats must be changed to four digits. Performance tuning of a database was difficult because sometimes hundreds of computer programs had to be recompiled for every change. Because database definition changes are common, a large fraction of software maintenance resources were devoted to database changes. Some studies have estimated the percentage as high as 50% of software maintenance resources.

Three Schema Architecture - Schema: database description - Reference architecture for compartmentalizing database descriptions Schema levels: - Conceptual level: base tables - External level: views - Internal level: implementation details for base tables (indexes, disk extents, clustering) - Chapter 10 for physical database design Mappings: - Performed by the DBMS: relieve user of much work - External to Conceptual: submit query using a view; DBMS translates to base tables - Conceptual to Internal: SELECT statement implemented with loops, join order, index usage, … Reduce impact of changes: - Use views rather than base tables in applications - DBMS translates queries on a view to query on lower level schema

Differences among Levels External FacultyAssignmentFormView: data required for the form in Slide 16 (Figure 1.9) FacultyWorkLoadReportView: data required for the report in Slide 17 (Figure 1.10) Conceptual: tables in Slide 11 Internal Files needed to store the tables Extra files to improve performance To make the three schema levels clearer, Table 4 shows differences among database definition at the three schema levels using examples from the features described in Section 1.2. Even in a simplified university database, the differences among the schema levels is clear. With a more complex database, the differences would be even more pronounced with many more views, a much larger conceptual schema, and a more complex internal schema. The schema mappings describe how a schema at a higher level is derived from a schema at a lower level. For example, the external views in Table 3 are derived from the tables in the conceptual schema. The mapping provides the knowledge to convert a request using an external view (for example, HighGPAView) into a request using the tables in the conceptual schema. The mapping between conceptual and internal levels shows how entities are stored in files.

Client-Server Architecture Client-Server Architecture: an arrangement of components (clients and servers) and data among computers connected by a network. The client-server architecture supports efficient processing of messages (requests for service) between clients and servers. To improve performance and availability of data, the client-server architecture supports many ways to distribute software and data in a computer network. The simplest scheme is just to place both software and data on the same computer (Figure 13(a)). To take advantage of a network, both software and data can be distributed. In Figure 13(b), the server software and database are located on a remote computer. In Figure 13(c), the server software and database are located on multiple remote computers.

Organizational Roles Because databases are pervasive, there are a variety of ways in which you may interact with databases. The classification in Figure 14 distinguishes between functional users who interact with databases as part of their work and information systems professionals who participate in designing and implementing databases. Each box in the hierarchy represents a role that you may play. You may simultaneously play more than one role. For example, a functional user in a job such as financial analysis may play all three roles in different databases. In some organizations, the distinction between functional users and information systems professionals is blurred. In these organizations, functional users may participate in designing and using databases. Functional users can play a passive or an active role when interacting with databases. Indirect usage of a database is a passive role. An indirect user is given a report or some data extracted from a database. A parametric user is more active than an indirect user. A parametric user requests existing forms or reports using parameters, input values that change from usage to usage. For example, a parameter may indicate a date range, sales territory, or department name. The power user is the most active. Because decision making needs can be difficult to predict, ad hoc or unplanned usage of a database is important. A power user is skilled enough to build a form or report when needed. Power users should have a good understanding of non-procedural access, a skill described in the first part of this book.

Database Specialists Database administrator (DBA) Data administrator More technical DBMS specific skills Data administrator Less technical Planning role DBA: - focused on individual databases and DBMSs - Need strong skills in specific DBMSs Data administrator - Planning: databases and technology - Standards setting - Computerized and non-computerized databases Large organizations have separate positions; small organizations combine roles Both positions require more than 1 db course - 2nd course - certification - lots of experience - management experience for data administration

Summary Databases and database technology vital to modern organizations Database technology supports daily operations and decision making Nonprocedural access is a crucial feature Many opportunities to work with databases Working with databases: can be lucrative but very demanding First part of textbook: fundamentals of relational databases Other chapters in Part 1: Chapter 2: overview of the database development process