Thursday, February 27, 2014

Data Base Management System



Data Base Management System

A “database” is an organized collection of. The data are typically organized to model relevant aspects of reality in a way that supports processes requiring this information. For example, modelling the availability of rooms in hotels in a way that supports finding a hotel with vacancies.
Database management systems are specially designed software applications that interact with the user, other applications, and the database itself to capture and analyze data. A general-purpose DBMS is a system designed to allow the definition, creation, querying, update, and administration of databases. Well-known DBMSs include, and. A database is not generally across different DBMSs, but different DBMSs can interoperate by using such as to allow a single application to work with more than one database.
Database Management Systems has quickly become one of the leading texts for database courses, known for its practical emphasis and comprehensive coverage. The third edition features new material on database application development, with a focus on Internet applications. The hands-on approach introduces students to current standards, including JDBC, XML, and 3-tier application architectures. A new, flexible organization allows instructors to teach either an applications-oriented course or an introductory systems-oriented course.  The revised part organization with Overview chapters makes it easy to select the chapters you need, in-depth chapters within each part can be optional.
This very current new edition also features pedagogical improvements, and updated and extended discussions of data mining, database tuning wizards, decision support, information retrieval, Internet security, object-oriented databases, transaction processing, and XML data management. Throughout, the coverage has been revised and expanded to reflect the new SQL1999 standard, including extensions that support multimedia data, object-relational databases, OLAP, recursive queries, spatial data, and SQL. The flexible organization and up-to-date discussion of advanced topics also makes the book ideal for use in a two-course sequence.




What is Data Base Management System
A Data Base Management System DBMS, sometimes just called a database manager, is a program that lets one or more computer users create and access in a. The DBMS manages user requests and requests from other programs so that users and other programs are free from having to understand where the data is physically located on storage media and, in a multi-user system, which else may also be accessing the data. In handling user requests, the DBMS ensures the integrity of the data that is, making sure it continues to be accessible and is consistently organized as intended and making sure only those with access can access the data. The most typical DBMS is a relational database management system. A standard user and program interface is the Structured Query Language. A newer kind of DBMS is the object-oriented database management system.


A DBMS can be thought of as a file manager that manages data in databases rather than flies in file system. In IBM’s, the no relational data managers were and are, because these systems are still used known as access methods.


A DBMS is usually an inherent part of a database product. On, Microsoft Access is a popular example of a single- or small-group user DBMS. Microsoft’s is an example of a DBMS that serves database requests from multiple users. Other popular DBMSs these are all RDBMSs, by the way are IBM's, DB2, Oracle’s line of database management products, and Sybase’s products.
IBM's Information Management System was one of the first DBMSs. A DBMS may be used by or combined with managers, such as IBM's Customer Information Control System.
A database management system or DBMS is essentially nothing more than a computerized data-keeping system. Users of the system are given facilities to perform several kinds of operations on such a system for either manipulation of the data in the database or the management of the database structure itself. Database Management Systems are categorized according to their data structures or types.
There are several types of databases that can be used on a mainframe inverted list, hierarchic, network, or relational.
Mainframe sites tend to use a hierarchical model when the data structure not data values of the data needed for an application is relatively static. For example, a Bill of Material BOM database structure always has a high level assembly part number, and several levels of components with sub components. The structure usually has a component forecast, cost, and pricing data, and so on. The structure of the data for a BOM application rarely changes, and new data elements not values are rarely identified. An application normally starts at the top with the assembly part number, and goes down to the detail components.
Hierarchical and relational database systems have common benefits. RDBMS has the additional, significant advantage over the hierarchical DB of being non-navigational. By navigational, we mean that in a hierarchical database, the application programmer must know the structure of the database. The program must contain specific logic to navigate from the root segment to the desired child segments containing the desired attributes or elements. The program must still access the intervening segments, even though they are not needed. The remainder of this section discusses the relational database structure.
A collection of that enables you to modify, and extract information from a. There are many different types of DBMSs, ranging from small that to huge systems that run on. The following are examples of database application.
DBMS Overview
Formally, database refers to the data themselves and supporting data structures. Databases are created to operate large quantities of information by inputting, storing, retrieving, and managing that information. Databases are set up so that one set of software programs provides all users with access to all the data.
A database management system is a suite of computer software providing the interface between users and a database or databases. Because they are so closely related, the term database when used casually often refers to both a DBMS and the data it manipulates.
Data definition: Defining new data structures for a database, removing data structures from the database, modifying the structure of existing data.
Update: Inserting, modifying, and deleting data.
Retrieval: Obtaining information either for end-user queries and reports or for processing by applications.
Administration: Registering and monitoring users, enforcing data security, monitoring performance, maintaining data integrity, dealing with concurrency control, and recovering information if the system fails.

General purpose and special purpose
A DBMS has evolved into a complex software system and its development typically requires thousands of person-years of development effort. Some general purpose DBMSs such as and DB2 have been undergoing upgrades since the 1970s. General purpose DBMSs aim to meet the needs of as many applications as possible, which add to the complexity. However, the fact that their development cost can be spread over a large number of users means that they are often the most cost-effective approach. However, a general purpose DBMS is not always the optimal solution, in some cases a general purpose DBMS may introduce unnecessary overhead. Therefore, there are many examples of systems that use special purpose databases. A common example is a system, email systems are designed to optimize the handling of email messages, and do not need significant portions of general purpose DBMS functionality.
Many databases have that access the database on behalf of end-users, without exposing the DBMS interface directly. Application programmers may use a directly, or more likely through an. Database designers and database administrators interact with the DBMS through dedicated interfaces to build and maintain the applications' databases, and thus need some more knowledge and understanding about how DBMSs operate and the DBMSs' external interfaces and tuning parameters.
General purpose databases are usually developed by one organization or community of programmers, while a different group builds the applications that use it. In many companies, specialized database administrators maintain databases, run reports, and may work on code that runs on the databases themselves rather than in the client application.
Definition
A database management system is the software that allows a computer to perform database functions of storing, retrieving, adding, deleting and modifying data. Relational database management systems implement the relational model of tables and relationships.
Stands for Database Management System. In short, a DBMS is a database program. Technically speaking, it is a software system that uses a standard method of cataloguing, retrieving, and running queries on data. The DBMS manages incoming data, organizes it, and provides ways for the data to be modified or extracted by users or other programs.
Some DBMS examples include MySQL, PostgreSQL, Microsoft Access, SQL Server, FileMaker, Oracle, RDBMS, dBASE, Clipper, and FoxPro. Since there are so many database management systems available, it is important for there to be a way for them to communicate with each other. For this reason, most database software comes with an Open Database Connectivity driver that allows the database to integrate with other databases. Common SQL statements such as SELECT and INSERT are translated from a program's proprietary syntax into a syntax other databases can understand.

A database management system is a software package designed to define, manipulate, retrieve and manage data in a database. A DBMS generally manipulates the data itself, the data format, field names, record structure and file structure. It also defines rules to validate and manipulate this data. A DBMS relieves users of framing programs for data maintenance. Fourth-generation query languages, such as SQL, are used along with the DBMS package to interact with a database.
From a technical standpoint, DBMSs can differ widely. The terms relational, network, flat, and all refer to the way a DBMS organizes information internally. The internal organization can affect how quickly and flexibly you can extract information. Requests for information from a database are made in the form of a, which is a stylized question. For example, the query,

Relational database management system
A “relational database management system” is that is based on the as introduced by, of IBM's. Many popular databases currently in use are based on the model.
RDBMSs have become since the 1980s a predominant choice for the storage of information in new databases used for financial records, manufacturing and logistical information, personnel data, and much more. Relational databases have often replaced legacy and because they are easier to understand and use. However, relational databases have been challenged by, which were introduced in an attempt to address the in relational database.
What structures exist in a relational database
Relational databases include the following structures,

Database

A database is a logical grouping of data. It contains a set of related table spaces and index spaces. Typically, a database contains all the data that is associated with one application or with a group of related applications. You could have a payroll database or an inventory database, for example.

Table

A table is a logical structure made up of rows and columns. Rows have no fixed order, so if you retrieve data you might need to sort the data. The order of the columns is the order specified when the table was created by the database administrator. At the intersection of every column and row is a specific data item called a value, or, more precisely, an atomic value. A table is named with a high-level qualifier of the owner's user ID followed by the table name,. There are three types of tables:
A base table that is created and holds persistent data
A temporary table that stores intermediate query results
A results table that is returned when you query tables.

Manages very large amounts of data
Supports efficient access to very large amounts of data
Supports concurrent access
Supports secure, atomic access
Three Aspects to studying DBMS
1.     Modeling and design of databases.
                  Allows exploration of issues before committing to an implementation
2.     Programming quires and DB operations like update
SQL = “Intergalactic data speak”
3.     DBMS implementation
CS145=(1)+(2), while (3) is covered in CS245, CS346 CS347

Entity Relationship Model
Entity like object “thing”
Entity set like class = set of “similar” entities objects
Attribute property of entities in an entity set, similar to fields of a struct.
In diagrams, entity set à rectangle, attribute àoval
Relationships
Connect two or more entity sets.
Represented by diamonds
Relationships Set
Think of the “value” of a relationship set as a table
One column for each of the connected entity sets
One row for each list of entities, one from each set, that are connected by the relationship
Benefits Database Management System
DBMS can house a wealth of information in one place. Data can be stored for a variety of purposes and many of us use DBMS on a daily basis without realizing it. Cell phone numbers listed alphabetically are a form of DBMS. In the workplace, DBMS can be used to store a large amount of important, and sometimes, confidential information, such as pay records and personal details.

           Tables can be created using data and this data can be split into fields. These fields can then be assigned a primary key, which enables the user to search for information easily and effectively. Secondary keys can also be applied to fields and by creating these fields users are able to search for data that is only applicable to the two fields in question.

         Security is a major issue, and in the case of confidential information being stored, passwords can be created, so that only those who need to see the information can do so. In business, databases can be used to create mailing lists, whether the mail will be sent electronically or by hard copy.

         The speed of DBMS is also a huge advantage compared to having to search through reams of paper to find out certain information. Certain keywords can be searched for and this will enable all the relevant information to appear on the screen immediately.

         The size of the databases is huge, so there is no need to create new databases if they are not needed. Similarly, if a second or third database is needed then these can be linked together if needs be.
Benefits of Database Management Systems are followings
             

 A true DBMS offers several advantages over file processing. The principal advantages of a DBMS are the followings

             • Flexibility: Because programs and data are independent, programs do not have to be modified when types of unrelated data are added to or deleted from the database, or when physical storage changes.


            • Fast response to information requests: Because data are integrated into a single database, complex requests can be handled much more rapidly than if the data were located in separate, non-integrated files. In many businesses, faster response means better customer service.

           • Multiple Accesses:
Database software allows data to be accessed in a variety of ways such as through various key fields and often, by using several programming languages.

           • Lower user training costs:
Users often find it easier to learn such systems and training costs may be reduced. Also, the total time taken to process requests may be shorter, which would increase user productivity.


          • Less storage: Theoretically, all occurrences of data items need be stored only once, thereby eliminating the storage of redundant data. System developers and database designers often use data normalization to minimize data redundancy.
Most databases offer four things:

1. Storage of data.
2. Management of relationships between the data.
3. Understanding of data type.
4. Metadata if you put something in a table called widgets you already know that anything described in that table are probably widgets.
Explains Database Management System
A database is the back-end of an application. A DBMS receives instruction from a database administrator  and accordingly instructs the system to make the necessary changes. These commands can be to load, retrieve or modify existing data from the system.
A DBMS always provides data independence. Any change in storage mechanism and formats are performed without modifying the entire application. There are four main types of database organization:
Relational Database: Data is organized as logically independent tables. Relationships among tables are shown through shared data. The data in one table may reference similar data in other tables, which maintains the integrity of the links among them. This feature is referred to as referential integrity - an important concept in a relational database system. Operations such as "select" and "join" can be performed on these tables. This is the most widely used system of database organization.
 
Flat Database: Data is organized in a single kind of record with a fixed number of fields. This database type encounters more errors due to the repetitive nature of data.
Object Oriented Database: Data is organized with similarity to object oriented programming concepts. An object consists of data and methods, while classes group objects having similar data and methods.
Hierarchical Database: Data is organized with hierarchical relationships. It becomes a complex network if the one-to-many relationship is violated.
Advantages of Database Management System

The DBMS has a number of advantages as compared to traditional computer file processing approach. The DBA must keep in mind these benefits or capabilities during designing databases, coordinating and monitoring the DBMS. The major advantages of DBMS are described below.

Controlling Data Redundancy

In non-database systems traditional computer file processing, each application program has its own files. In this case, the duplicated copies of the same data are created at many places. In DBMS, all the data of an organization is integrated into a single database. The data is recorded at only one place in the database and it is not duplicated. For example, the dean's faculty file and the faculty payroll file contain several items that are identical. When they are converted into database, the data is integrated into a single database so that multiple copies of the same data are reduced to-single copy.
In DBMS, the data redundancy can be controlled or reduced but is not removed completely. Sometimes, it is necessary to create duplicate copies of the same data items in order to relate tables with each other.
By controlling the data redundancy, you can save storage space. Similarly, it is useful for retrieving data from database using queries.


 Data Consistency

By controlling the data redundancy, the data consistency is obtained. If a data item appears only once, any update to its value has to be performed only once and the updated value new value of item is immediately available to all users.
If the DBMS has reduced redundancy to a minimum level, the database system enforces consistency. It means that when a data item appears more than once in the database and is updated, the DBMS automatically updates each occurrence of a data item in the database.

 Data Sharing

In DBMS, data can be shared by authorized users of the organization. The DBA manages the data and gives rights to users to access the data. Many users can be authorized to access the same set of information simultaneously. The remote users can also share same data. Similarly, the data of same database can be shared between different application programs.

 Data Integration

In DBMS, data in database is stored in tables. A single database contains multiple tables and relationships can be created between tables or associated data entities. This makes easy to retrieve and update data.

Integrity Constraints

Integrity constraints or consistency rules can be applied to database so that the correct data can be entered into database. The constraints may be applied to data item within a single record or they may be applied to relationships between records.

 Data Security

Data security is the protection of the database from unauthorized users. Only the authorized persons are allowed to access the database. Some of the users may be allowed to access only a part of database i.e., the data that is related to them or related to their department. Mostly, the DBA or head of a department can access all the data in the database. Some users may be permitted only to retrieve data, whereas others are allowed to retrieve as well as to update data. The database access is controlled by the DBA. He creates the accounts of users and gives rights to access the database. Typically, users or group of users are given usernames protected by passwords.
Most of the DBMSs provide the security sub-system, which the DBA uses to create accounts of users and to specify account restrictions. The user enters account number or username and password to access the data from database. For example, if you have an account of e-mail in the  a popular website, then you have to give your correct username and password to access your account of e-mail. Similarly, when you insert your ATM card into the Auto Teller Machine in a bank, the machine reads your ID number printed on the card and then asks you to enter your pin code or password. In this way, you can access your account.
Data Atomicity
A transaction in commercial databases is referred to as atomic unit of work. For example, when you purchase something from a point of sale terminal, a number of tasks are performed such as;
  • Company stock is updated.
  • Amount is added in company's account.
  • Sales person's commission increases etc.
All these tasks collectively are called an atomic unit of work or transaction. These tasks must be completed in all; otherwise partially completed tasks are rolled back. Thus through DBMS, it is ensured that only consistent data exists within the database.

Database Access Language

Most of the DBMSs provide SQL as standard database access language. It is used to access data from multiple tables of a database.

Development of Application

The cost and time for developing new applications is also reduced. The DBMS provides tools that can be used to develop application programs. For example, some wizards are available to generate Forms and Reports. Stored procedures stored on server side also reduce the size of application programs.

Creating Forms

Form is very important object of DBMS. You can create Forms very easily and quickly in DBMS, Once a Form is created, it can be used many times and it can be modified very easily. The created Forms are also saved along with database and behave like a software component.
A Form provides very easy way user-friendly interface to enter data into database, edit data, and display data from database. The non-technical users can also perform various operations on databases through Forms without going into the technical details of a database.

Report Writers

Most of the DBMSs provide the report writer tools used to create reports. The users can create reports very easily and quickly. Once a report is created, it can be used many times and it can be modified very easily. The created reports are also saved along with database and behave like a software component.

Control over Concurrency

In a computer file-based system, if two users are allowed to access data simultaneously, it is possible that they will interfere with each other. For example, if both users attempt to perform update operation on the same record, then one may overwrite the values recorded by the other. Most DBMSs have sub-systems to control the concurrency so that transactions are always recorded" with accuracy.

Backup and Recovery Procedures

In a computer file-based system, the user creates the backup of data regularly to protect the valuable data from damaging due to failures to the computer system or application program. It is a time consuming method, if volume of data is large. Most of the DBMSs provide the 'backup and recovery' sub-systems that automatically create the backup of data and restore data if required. For example, if the computer system fails in the middle of an update operation of the program, the recovery sub-system is responsible for making sure that the database is restored to the state it was in before the program started executing.

Data Independence

The separation of data structure of database from the application program that is used to access data from database is called data independence. In DBMS, database and application programs are separated from each other. The DBMS sits in between them. You can easily change the structure of database without modifying the application program. For example you can modify the size or data type of a data items fields of a database table. On the other hand, in computer file-based system, the structure of data items are built into the individual application programs. Thus the data is dependent on the data file and vice versa.

Advanced Capabilities

DBMS also provides advance capabilities for online access and reporting of data through Internet. Today, most of the database systems are online. The database technology is used in conjunction with Internet technology to access data on the web servers.

Disadvantages of Database Management System

Although there are many advantages but the DBMS may also have some minor disadvantages. These are,

Cost of Hardware & Software

A processor with high speed of data processing and memory of large size is required to run the DBMS software. It means that you have to upgrade the hardware used for file-based system. Similarly, DBMS software is also Very costly.

Cost of Data Conversion

When a computer file-based system is replaced with a database system, the data stored into data file must be converted to database files. It is difficult and time consuming method to convert data of data files into database. You have to hire DBA and system designer along with application programmers, Alternatively, you have to take the services of some software houses. So a lot of money has to be paid for developing database and related software.

Cost of Staff Training

Most DBMSs are often complex systems so the training for users to use the DBMS is required. Training is required at all levels, including programming, application development, and database administration. The organization has to pay a lot of amount on the training of staff to run the DBMS.

 Appointing Technical Staff


      The trained technical persons such as database administrator and application programmers etc are required to handle the DBMS. You have to pay handsome salaries to these persons. Therefore, the system cost increases.

Database Failures

In most of the organizations, all data is integrated into a single database. If database is corrupted due to power failure or it is corrupted on the storage media, then our valuable data may be lost or whole system stops.
Database System Environment

There are five major components in the database system environment and their interrelationship are.

Hardware
Software
Data
Users
Procedures
Hardware: The hardware is the actual system used for keeping and accessing the database. Conventional DBMS hardware consists of secondary storage devices, usually hard disks, on which the database physically resides, together with the associated Input-Output devices, device controllers and· so forth. Databases run on a' range of machines, from Microcomputers to large mainframes. Other hardware issues for a DBMS includes database machines, which is hardware designed specifically to support a database system. 

Software: The software is the actual DBMS. Between the physical database itself the data as actually stored and the users of the system is a layer of software, usually called the Database Management System or DBMS. All requests from users for access to the database are handled by the DBMS. One general function provided by the DBMS is thus the shielding of database users from complex hardware-level detail.

The DBMS allows the users to communicate with the database. In a sense, it is the mediator between the database and the users. The DBMS controls the access and helps to maintain the consistency of the data. Utilities are usually included as part of the DBMS. Some of the most common utilities are report writers and application development. 

 Data : It is the most important component of DBMS environment from the end users point of view. As shown in observes that data acts as a bridge between the machine components and the user components. The database contains the operational data and the meta-data, the 'data about data'. 

The database should contain all the data needed by the organization. One of the major features of databases is that the actual data are separated from the programs that use the data. A database should always be designed, built and populated for a particular audience and for a specific purpose. 

Users : There are a number of users who can access or retrieve data on demand using the applications and interfaces provided by the DBMS. Each type of user needs different software capabilities. The users of a database system can be classified in the following groups, depending on their degrees of expertise or the mode of their interactions with the DBMS.


The trained technical persons such as database administrator and application programmers etc are required to handle the DBMS. You have to pay handsome salaries to these persons. Therefore, the system cost increases.

Database Failures

In most of the organizations, all data is integrated into a single database. If database is corrupted due to power failure or it is corrupted on the storage media, then our valuable data may be lost or whole system stops.
Database System Environment
There are five major components in the database system environment and their interrelationship are.

Hardware
Software
Data
Users
Procedures
 
Hardware: The hardware is the actual system used for keeping and accessing the database. Conventional DBMS hardware consists of secondary storage devices, usually hard disks, on which the database physically resides, together with the associated Input-Output devices, device controllers and· so forth. Databases run on a' range of machines, from Microcomputers to large mainframes. Other hardware issues for a DBMS includes database machines, which is hardware designed specifically to support a database system. 

Software: The software is the actual DBMS. Between the physical database itself the data as actually stored) and the users of the system is a layer of software, usually called the Database Management System or DBMS. All requests from users for access to the database are handled by the DBMS. One general function provided by the DBMS is thus the shielding of database users from complex hardware-level detail. 

The DBMS allows the users to communicate with the database. In a sense, it is the mediator between the database and the users. The DBMS controls the access and helps to maintain the consistency of the data. Utilities are usually included as part of the DBMS. Some of the most common utilities are report writers and application development.
 Data : It is the most important component of DBMS environment from the end users point of view. As shown in observes that data acts as a bridge between the machine components and the user components. The database contains the operational data and the meta-data, the 'data about data'. 

The database should contain all the data needed by the organization. One of the major features of databases is that the actual data are separated from the programs that use the data. A database should always be designed, built and populated for a particular audience and for a specific purpose. 

Users : There are a number of users who can access or retrieve data on demand using the applications and interfaces provided by the DBMS. Each type of user needs different software capabilities. The users of a database system can be classified in the following groups, depending on their degrees of expertise or the mode of their interactions with the DBMS.


No comments:

Post a Comment