170 likes | 298 Views
Nawroz University Computer and IT Collage Computer Science Second Stage Information Management I Chapter One References : 1- Fundamentals of Database Systems , Elmasri and Navathe , 4’th Edition. 2- Database Management System , R.Ramakrishnan , J.Gehrke , 2’nd Edition.
E N D
Nawroz University Computer and IT Collage Computer Science Second Stage Information Management I Chapter One References : 1- Fundamentals of Database Systems , Elmasri and Navathe, 4’th Edition. 2- Database Management System , R.Ramakrishnan, J.Gehrke, 2’nd Edition.
Historical Development of Database Technology 1- Early Database Applications:The Hierarchical and Network Models were introduced in mid 1960’s and dominated during the seventies. A bulk of the worldwide database processing still occurs using these models. 2-Relational Model based Systems:The model that was originally introduced in 1970 by Edgar Codd, was heavily researched and experimented with in IBM and the universities. 3-Object-Oriented Applications:OODBMS were introduced in late 1980’s and early 1990’s to cater to the need of complex data processing in CAD (Computer Aid Design) and other applications. Their use has not taken off much. 4- Data on the Web:Web contains data in HTML with links among pages. This has given rise to a new set of applications and E-commerce is using new standards like XML (eXtended Markup Language).
Basic Definitions Database: A collection of related data. Data: Known facts that can be recorded and have an implicit meaning. Mini-world: Some part of the real world about which data is stored in a database. For example, student grades and transcripts at a university. Database Management System (DBMS): A software package/ system to facilitate the creation and maintenance of a computerized database. Database System: The DBMS software together with the data itself. Sometimes, the applications are also included.
A Database has the Following Implicit Properties: • A database represents some aspect of the real world, sometimes called the mini-world. Changes to the mini-world are reflected in the database. • A database is a logically coherent collection of data with some inherent meaning. A random assortment of data cannot correctly be referred to as a database. • A database is designed, built, and populated with data for a specific purpose. It has an intended group of users and some preconceived applications in which these users are interested.
Types of Database System 1- Traditional Database Applications,in which most of the information that is stored and accessed is either textual or numeric. 2- Multimedia Databases can now store pictures, video clips, and sound messages. 3- Geographic information systems (GIS)can store and analyze maps, weather data, and satellite images. 4-Data Warehouses and Online Analytical Processing (OLAP) Systems are used in many companies to extract and analyze useful information from very large databases for Decision Making. 5-Real-time and Active Database technology is used in controlling industrial and manufacturing processes. 6-Database Search Techniques are being applied to the World Wide Web to improve the search for information that is needed by users browsing the Internet.
A Simplified Database System Environment Users/Programmers Application Programs / Queries DBMS Software Software to Process Queries/Programs Software to Access Stored Data Stored Database Definition (Meta-Data) Stored Database
Typical DBMS Functionality Define a Database in terms of data types, structures and constraints. Construct or Load the Database on a secondary storage medium. Manipulating the database querying, generating reports, insertions, deletions and modifications to its content. Concurrent Processing and Sharing by a set of users and programs –yet, keeping all data valid and consistent. Protection or Security measures to prevent unauthorized access. Active Processing to take internal actions on data. Presentation and Visualization of data.
Main Characteristics of the Database Approach 1-Self-describing nature of a database system: A DBMS catalog stores the description of the database: The description is called meta-data). This allows the DBMS software to work with different databases. 2- Insulation between programs and data: Called program-data independence. Allows changing data storage structures and operations without having to change the DBMS access programs. 3- Data Abstraction:A data model is used to hide storage details and present the users with a conceptual view of the database. 4- Support of multiple views of the data: Each user may see a different view of the database, which describes only the data of interest to that user.
Main Characteristics of the Database Approach [Continue..] 5- Sharing of data and multi-user transaction processing : Allowing a set of concurrent users to retrieve and to update the database. Concurrency control within the DBMS guarantees that each transaction is correctly executed or completely aborted. OLTP (Online Transaction Processing) is a major part of database applications. Database Users Users may be divided into those who actually use and control the content (called “Actors on the Scene”) and those who enable the database to be developed and the DBMS software to be designed and implemented (called “Workers Behind the Scene”).
Database Users [Continue……] 1–Database Administrators: Responsible for authorizing access to the database, for coordinating and monitoring its use, acquiring software, and hardware resources, controlling its use and monitoring efficiency of operations. 2–Database Designers: Responsible to define the content, the structure, the constraints, and functions or transactions against the database. They must communicate with the end-users and understand their needs. 3–End-users: They use the data for queries, reports and some of them actually update the database content. 4-Casual : Access database occasionally when needed.
Database Users [Continue……] 5-Naïve or Parametric: They make up a large section of the end-user population. They use previously well-defined functions in the form of “canned transactions” against the database. Examples are bank-tellers or reservation clerks who do this activity for an entire shift of operations. 6-Sophisticated: these include business analysts, scientists, engineers, others thoroughly familiar with the system capabilities. Many use tools in the form of software packages that work closely with the stored database. 7- Stand-alone: Mostly maintain personal databases using ready-to-use packaged applications. An example is a tax program user that creates his or her own internal database.
Advantages of Using the Database Approach 1-Controlling redundancy in data storage: Redundancy means store the same data multiple times leads to problems: First: need to perform a single logical update once for each file. Second: storage space is wasted when the same data is stored. Third: files that represent the same data may become inconsistent. 2- Restricting unauthorized access to data: Users or user groups are given account numbers protected by passwords, which they can use to gain access to the database. A DBMS should provide a security and authorization subsystem. 3- Providing Storage Structures for efficient Query Processing: Because the data store on the disk. Indexes hash data structures, suitably modified for disk search. Buffering module that maintains parts of the database in main memory buffers. Optimization module of the DBMS is responsible for choosing an efficient query execution plan for each query based on the existing storage structures.
Advantages of Using the Database Approach [Continue…] 4-Providing Persistent Storage for Program Objects: Object-oriented database systems are compatible with programming languages such as C++ and Java, and the DBMS software automatically performs any necessary conversions. Hence, a complex object in C++ can be stored permanently in an OODBMS. 5- Providing multiple interfaces to different classes of users: Because many types of users with varying levels of technical knowledge use a database, a DBMS should provide a variety of user interfaces. Both forms-style interfaces and menu-driven interfaces are commonly known as graphical user interfaces (GUI ). 6- Representing complex relationships among data: A DBMS must have the capability to represent a variety of complex relationships among the data as well as to retrieve and update related data easily and efficiently.
Advantages of Using the Database Approach [Continue…] 7- Providing backup and recovery services: A DBMS must provide facilities for recovering from hardware or software failures. 8- Enforcing integrity constraints on the database: DBMS should provide capabilities for defining and enforcing these constraints. The simplest type of integrity constraint involves specifying a data type for each data item. These constraints are derived from the meaning or semantics of the data and of the mini-world it represents. 9- Permitting Inferences and Actions using Rules: Some database systems provide capabilities for defining Deduction Rules For Inferencing New information from the stored database facts. Such systems are called deductive database systems. Active database systems, which provide active rules that can automatically initiate actions when certain events and conditions occur.
Extending Database Capabilities for New Applications 1-Scientific Applications that store large amounts of data resulting from scientific experiments in areas such as high-energy physics or the mapping of the human genome. 2-storage and Retrieval of Images from scanned news, Pc photographs or medical images such as X-rays or MRI (magnetic resonance imaging) or video such as movies, video clips or PC camera video. 3- Data Mining Applications that analyze large amounts of data searching for the occurrences of specific patterns or relationships. 4- Spatial Applications that store spatial locations of data such as weather information or maps used in (GIS). 5- Time Series Applications for example, daily sales or monthly national product figures.
WHEN NOT TO USE A DBMS The overhead costs of using a DBMS are due to the following: 1- High initial investment in hardware, software, and training 2- The generality that a DBMS provides for defining and processing data 3- Overhead for providing security, concurrency control, recovery, and integrity functions. When a DBMS may be unnecessary It may be more desirable to use regular files under the following circumstances: 1- The database and applications are simple, well defined, and not expected to change. 2- There are stringent real-time requirements for some programs that may not be met because of DBMS overhead. 3- Multiple-user access to data is not required.