You are on page 1of 44

Database management System

Data and information


Data are raw facts that are stored in computer in format of byte. Processing of data is called Information.

Data base The word database made up of two words. Data and base. A database is collection of interrelated data. That database contains all the data needed by the organization, as a result a huge volume of data that needed for long term storage and excess the data by large number of users. Example: Employee details of an organization li e employee number, employee name, salary, date of !oining etc" can be called as data base. Flat File# $ flat file is a file containing records that have no structured interrelationship.

DBMS: Database management systems consist of collection of interrelated data and set of program that access to the data. It is software that is helpful in maintaining and utilizing the data. Database Applications# % &an ing# all transactions % $irlines# reservations, schedules % 'niversities# registration, grades % (ales# customers, products, purchases % )anufacturing# production, inventory, orders, supply chain % *uman resources# employee records, salaries, tax deductions Purpose of DBMS Drawbac s of using file systems to store data# % Data redundancy and inconsistency % )ultiple file formats, duplication of information in different files % Difficulty in accessing data % +eed to write a new program to carry out each new tas % Data isolation , multiple files and formats % Integrity problems % Integrity constraints -e.g. account balance . /0 become part of program code % *ard to add new constraints or change existing ones Drawbac s of using file systems -cont.0
1

% $tomicity of updates % 1ailures may leave database in an inconsistent state with partial updates carried out % E.g. transfer of funds from one account to another should either complete or not happen at all % 2oncurrent access by multiple users % 2oncurrent accessed needed for performance % 'ncontrolled concurrent accesses can lead to inconsistencies 3 E.g. two people reading a balance and updating it at the same time % (ecurity problems % Database systems offer solutions to all the abo e problems. Ad antages of DBMS +ow that we have nown what is a D&)(, we can easily list down the advantages of a D&)(. (ome of these advantages are# !educed Data !edundancy In early data processing systems, each program had its own data file. This led to the duplication of data across organization. Data 4edundancy is reduced in a D&)( to a great extent as the database consists of an integrated set of files. Therefore, in a typical database the employee information li e the employee number, name, address, !oining date, salary, etc. is stored only once but can be accessed by different programs, departments or users at any time. $lso, since the data is stored at a central location, every one uses the data in the same format. "nconsistency is a oided Data 4edundancy in the organization led to inconsistency of data. 5et us ta e an example to illustrate this point. The employee detail DE(I6+$TI7+ is needed by the 8Payroll9 and 8Employee Training9 departments. 5et us further suppose that both of these departments have their own data. 5et us suppose that the designation of an employee changed, but the change was done only by the Payroll department in their data file. This means that the data is inconsistent #$ as it shows the same employee with two designations. (ince data redundancy is reduced in a D&)(, inconsistency too is avoided. !educed Programming effort During the early days of data processing, for even a small tas li e retrieving employee number and name, a program had to be written. )ost of such re:uirements in a D&)( can be handled without any extra programming effort. D&)( have some in;built functions to ta e care of such basic tas s. &ut, in case of a complex :uery programming is re:uired. )any D&)(s come with an in;built :uery language which is English;li e and hence is easy to learn and use. <riting a program in such a language is therefore, does not re:uire much of effort. Data "ndependence
2

In the early days of data processing, data and programs were tightly bound to each other. Therefore, any change made to the data structure would trigger the changes to be made to all the programs that access it. &ut in a D&)(, data is independent of the application programs using it. D&)( relieves the users from the responsibility of nowing the physical details of data. The user need to now only the logical content of data. Therefore, any change done to the data structure will not imply that changes should be done to all the application programs that access the data. %ost !eduction )any D&)( pac ages prove to be :uite costly in the beginning because of high initial investment. &ut in a long run they reduce the cost of the entire business operation. This reduction in cost is because of all the factors discussed above. 1or example, it can be said that because the data can be accessed faster and less programming is re:uired to retrieve data, the overall operation is enhanced in a D&)(. $nd as a result there is an accompanying cost benefit. Security (ecurity and data integrity are vital to the success of a database. Data must be safeguarded against any type of damage, whether it is system failure, human error, a natural calamity or intentional mischief. )any D&)( provide the users with the facility of ta ing bac ups. 5ogging is another techni:ue in which every change made to the database is recorded on a separate log. This log is maintained on a separate storage device from that on which the database is stored. In case of any failure, data can be recovered from this log. ## )any D&)( provide the user with the facility of a username and a password to connect to the database. Then, depending on the user=s rights, restricted access is provided to the database. Multi&user support and Distributed Processing $lmost all of the D&)(s today support multiple users. This means that more than one user might attempt to change the same data at the same time. In such a situation the D&)( must use the concept of concurrency control . (ome database management systems allow the users to retrieve information from remotely located databases. The connection in such a case is made via ordinary telephone lines or satellite lin s. In many applications li e railway or airline reservation systems distributed processing is indispensable. #.' Disad antages of DBMS Though D&)( has many advantages, it has some disadvantages too. 7ne of the most apparent disadvantage is its cost. $ D&)( does pay in the long run but its initial investment is :uite high. The hardware has to be upgraded so that the programs and extensive data can be executed and stored. 4edundancy is reduced to a great extent in a D&)(, but lac of duplication re:uires that the database is ade:uately bac ed up so that in case of any failure this bac up data can be used by the system. $lso, in a D&)( recovery and bac up procedures are fairly
3

complex. Despite these disadvantages, there are a number of advantages of a D&)( because of which they are extremely popular. DBMS Architecture Database )anagement (ystems are very complex, sophisticated software applications that provide reliable management of large amounts of data. To better understand general database concepts and the structure and capabilities of a D&)(, it is useful to examine the architecture of a typical database management system. There are two different ways to loo at the architecture of a D&)(# the logical DBMS architecture and the physical DBMS architecture. The logical architecture deals with the way data is stored and presented to users, while the physical architecture is concerned with the software components that ma e up a D&)(. (ogical DBMS Architecture The logical architecture describes how data in the database is perceived by users. It is not concerned with how the data is handled and processed by the D&)(, but only with how it loo s. 'sers are shielded from the way data is stored on the underlying file system, and can manipulate the data without worrying about where it is located or how it is actually stored. This results in the database having different levels of abstraction. The $+(I>(P$42 architecture divides the system into three levels of abstraction# the internal or physical level, the conceptual level, and the external or view level. The diagram below shows the logical architecture for a typical D&)(.

Figure 3-1 Logical DBMS Architecture )he "nternal or Physical (e el The collection of files permanently stored on secondary storage devices is nown as the physical database. The physical or internal level is the one closest to physical storage, and it provides a low; level description of the physical database, and an interface between the operating system?s file system and the record structures used in higher levels of abstraction. It is at this level that record types and methods of storage are defined, as well as how stored fields are represented, what physical se:uence the stored records are in, and what other physical structures exist. )he %onceptual (e el The conceptual level presents a logical view of the entire database as a unified whole, which allows you to bring all the data in the database together and see it in a consistent manner. The first stage in the design of a database is to define the conceptual view, and a D&)( provides a data definition language for this purpose. It is the conceptual level that allows a D&)( to provide data independence. The data definition language used to create the conceptual level must not specify any physical storage considerations that should be handled by the physical level. It should not provide any storage or access details, but should define the information content only. )he External or *ie+ (e el
5

The external or view level provides a window on the conceptual view which allows the user to see only the data of interest to them. The user can be either an application program or an end user. $ny number of external schemas can be defined and they can overlap each other. The (ystem $dministrator and the Database $dministrator are special cases. &ecause they have responsibilities for the design and maintenance for the design and maintenance of the database, they at times need to be able to see the entire database. The external and the conceptual view are functionally e:uivalent for these two users. Mappings bet+een (e els 7bviously, the three levels of abstraction in the database do not exist independently of each other. There must be some correspondence, or mapping, between the levels. There are actually two mappings# the conceptual>internal mapping and the external>conceptual mapping. The conceptual>internal mapping lies between the conceptual and internal levels, and defines the correspondence between the records and the fields of the conceptual view and the files and data structures of the internal view. If the structure of the stored database is changed, then the conceptual> internal mapping must also be changed accordingly so that the view from the conceptual level remains constant. It is this mapping that provides physical data independence for the database. The external>conceptual view lies between the external and conceptual levels, and defines the correspondence between a particular external view and the conceptual view. $lthough these two levels are similar, some elements found in a particular external view may be different from the conceptual view. 1or example, several fields can be combined into a single -virtual0 field, which can also have different names from the original fields. If the structure of the database at the conceptual level is changed, then the external>conceptual mapping must change accordingly so the view from the external level remains constant. It is this mapping that provides logical data independence for the database. It is also possible to have another mapping, where one external view is expressed in terms of other external views -this could be called an external>external mapping0. This is useful if several external views are closely related to one another, as it allows you to avoid mapping each of the similar external views directly to the conceptual level. Physical DBMS Architecture The physical architecture describes the software components used to enter and process data, and how these software components are related and interconnected. $lthough it is not possible to generalize the component structure of a D&)(, it is possible to identify a number of ey functions
6

which are common to most database management systems. The components that normally implement these functions are shown in the diagram on the following page, which depicts the physical architecture for a typical D&)(. $t its most basic level the physical D&)( architecture can be bro en down into two parts# the back en and the !ront en . The bac end is responsible for managing the physical database and providing the necessary support and mappings for the internal, conceptual, and external levels described earlier. 7ther benefits of a D&)(, such as security, integrity, and access control, are also the responsibility of the bac end. The front end is really !ust any application that runs on top of the D&)(. These may be applications provided by the D&)( vendor, the user, or a third party. The user interacts with the front end, and may not even be aware that the bac end exists.

Figure 3-" #hysical DBMS Architecture &oth the bac end and front end can be further bro en down into the software components that are common to most types of D&)(. These components are examined in detail in the following sections. Applications and ,tilities
7

$pplications and utilities are the main interface to the D&)( for most users. There are three main sources of applications and utilities for a D&)(# the vendor, the user, and third parties. @endor applications and utilities are provided for wor ing with or maintaining the database, and usually allow users to create and manipulate a database without the need to write custom applications. *owever, these are usually general;purpose applications and are not the best tools to use for doing specific, repetitive tas s. 'ser applications are generally custom;made application programs written for a specific purpose using a conventional programming language. This programming language is coupled to the D&)( :uery language through the application progra$ inter!ace %A#&'. This allows the user to utilize the power of the D&)( :uery language with the flexibility of a custom application. Third party applications may be similar to those provided by the vendor, but with enhancements, or they may fill a perceived need that the vendor hasn?t created an application for. They can also be similar to user applications, being written for a specific purpose they thin a large ma!ority of users will need. The most common applications and utilities used with a database can be divided into several well; defined categories. These are#

%ommand (ine "nterfaces;these are character;based, interactive interfaces that let you use the full power and functionality of the D&)( :uery language directly. They allow you to manipulate the database and perform ad;hoc :ueries and see the results immediately. They are often the only method of exploiting the full power of the database without creating programs using a conventional programming language. -raphical ,ser "nterface .-,"/ tools;these are graphical, interactive interfaces that hide the complexity of the D&)( and :uery language behind an intuitive, easy to understand, and convenient interface. This allows casual users the ability to access the database without having to learn the :uery language, and it allows advanced users to :uic ly manage and manipulate the database without the trouble of entering formal commands using the :uery language. *owever, graphical interfaces usually do not provide the same level of functionality as a command line interface because it is not always possible to implement all commands or options using a graphical interface. Bac0up1!estore ,tilities;these are designed to minimize the effects of a database failure and ensure a database is restored to a consistent state if a failure does occur. )anual bac up>restore utilities re:uire the user to initiate the bac up, while automatic utilities will bac up the database at regular intervals without any intervention from the user. Proper use of a bac up>restore utility allows a D&)( to recover from a system failure correctly and reliably.
8

(oad1,nload ,tilities;these allow the user to unload a database or parts of a database and reload the data on the same machine, or on another machine in a different location. This can be useful in several situations, such as for creating bac up copies of a database at a specific point in time, or for loading data into a new version of the database or into a completely different database. These load>unload utilities may also be used for rearranging the data in the database to improve performance, such as clustering data together in a particular way or reclaiming space occupied by data that has become obsolete. !eporting1Analysis ,tilities;these are used to analyze and report on the data contained in the database. This may include analyzing trends in data, computing values from data, or displaying data that meets some specified criteria, and then displaying or printing a report containing this information.

)he Application Program "nterface The application program interface -$PI0 is a library of low;level routines which operate directly on the database engine. The $PI is usually used when creating software applications with a general; purpose programming language such as 2AA or @isual &asic. This allows you to write custom software applications to suit the needs of your business, without having to develop the storage architecture as well. The storage of the data is handled by the database engine, while the input and any special analysis or reporting functions are handled by the custom application. $n $PI is specific to each D&)(, and a program written using the $PI of one D&)( cannot be used with another D&)(. This is because each $PI usually has its own uni:ue functions calls that are tied very tightly to the operation of the database. Even if two databases have the same function, they may use different parameters and function in different ways, depending on how the database designer decided to implement the function in each database. 7ne exception to this is the )icrosoft 7pen Database 2onnectivity $PI, which is designed to wor with any D&)( that supports it. )he 2uery (anguage Processor The :uery language processor is responsible for receiving :uery language statements and changing them from the English;li e syntax of the :uery language to a form the D&)( can understand. The :uery language processor usually consists of two separate parts# the parser and the :uery optimizer. The parser receives :uery language statements from application programs or command;line utilities and examines the syntax of the statements to ensure they are correct. To do this, the parser brea s a statement down into basic units of syntax and examines them to ma e sure each statement consists of the proper component parts. If the statements follow the syntax rules, the to ens are passed to the :uery optimizer.

The :uery optimizer examines the :uery language statement, and tries to choose the best and most efficient way of executing the :uery. To do this, the :uery optimizer will generate several :uery plans in which operations are performed in different orders, and then try estimate which plan will execute most efficiently. <hen ma ing this estimate, the :uery optimizer may examine factors such as# 2P' time, dis time, networ time, sorting methods, and scanning methods. )he DBMS Engine The D&)( engine is the heart of the D&)(, and it is responsible for all of the data management in the D&)(. The D&)( engine usually consists of two separate parts# the transaction manager and the file manager. The transaction manager maintains tables of authorization and currency control information. The D&)( may use authorization tables to allow the transaction manager to ensure the user has permission to execute the :uery language statement on the database. The authorization tables can only be modified by properly authorized user commands, which are themselves chec ed against the authorization tables. In addition, a database may also support concurrency control tables to prevent conflicts when simultaneous, conflicting commands are executed. The D&)( chec s the concurrency control tables before executing a :uery language statement to ensure that it is not loc ed by another statement. The file manager is the component responsible for all physical input>output operations on the database. It is concerned with the physical a ress of the data on the dis , and is responsible for any interaction -reads or writes0 with the host operating system )ypes of Databases

10

11

Components of database $ Database )anagement (ystem -D&)(0 is defined as a software pac age that contains computer programs that can control the creation, maintenance and also the use of any database. There are five ma!or components of any database management system. These are# $ D&)( engine, a Data Definition (ubsystem, a Data )anipulation (ubsystem, an $pplication 6eneration (ubsystem and a Data $dministration (ubsystem. $ D&)( engine is the part of the system that accepts and deals with logical re:uests that are received from a variety of other D&)( subsystems. It then wor s to convert them into physical e:uivalents and will then gain access to the database along with its data dictionary as they are on a storagedevice. $ Data Definition (ubsystem has a simple but useful purpose to assist the user in creating and eeping up with the data dictionary. It also helps to define the structure of any file that is contained within the database. $ Data )anipulation (ubsystem is another part of the system that helps the user. It helps them to add, change and delete any data within the database. It also deals with any re:uests for valuable information. (oftware tools that exist within the Data )anipulation (ubsystem are usually the primary interface between the user and the information in the database that they are trying to access. The Data )anipulation (ubsystem allows the user to be specific with their information re:uirements. $n $pplication 6eneration (ubsystem is the part of the system that contains all the facilities that could be used to help the user develop transaction intensive applications. This procedure will usually re:uire the user to perform complex and detailed tas s to complete the transaction. This is where the $pplication 6eneration (ubsystem comes in useful as it provides easy to use screens where you enter the data, programming languages and interfaces.

$ Data $dministration (ubsystem is there to help users with managing the overall database environment. It does this by providing facilities that give the user options for bac up and recovery of lost data, managing the system?s security, :uery optimization, concurrency control and change management.
12

Database management System $ set of application program used to access, update and manage data. This part constitutes data base management. DBMS is a general purpose of software Eg. 7racle, (B5 etc"". D&)( is a complex system that allows users to do many things to data. DBMS allo+s user to input data3 share the data, edit the data, manipulate the data and display the data in data base.

Edit Input DBMS Share


Manipulate

Update

Select

*arious types of user interacts There are various ways to interact with the data base which was shown following diagram.

User

P1
13

S
Figure: types of user interaction From figure #: 'ser one is directly wor ing with database interactively by wor ing directly we mean that the user issue certain command to :uery the database. 'ser two is wor ing with the database indirectly with the help of an application programs written by a programmer. Program -P0 interacting with the database without the presents of any user, program li e this are nown as batch programs and are used for various purposes li e generation of periodic reports.

'serC, userD, P could be interacting with database at the same time concurrently. This type of an environment is multiuser environment. Database !"#llecti#n #$ $iles%

&ile !"#llecti#n #$ rec#rds%

'ec#rd !"#llecti#n #$ $ields%

(h)ed

&ield

Components and interfaces of DBMS $ database management system involves 4 ma5or components C. Data D. *ardware E. (oftware F. Procedure
14

G. 'sers.

Data is building bloc of database management system. Data is considered as a heart of database management system.

6ard+are: The particular hardware depends on the re:uirements of the organization and the database management system. (ome D&)( run only on particular operating system, while others run on a wide variety of operating system. $ D&)( re:uires a minimum amount of main memory and dis space to run, but this minimum configuration may not give acceptable performance.

Soft+are: The software includes the D&)( software, application programs together with the operating system. The application programs are return in programming language li e H2=, H27&75=, etc""""..

Procedure: are the rules that govern the design and use of the database. The procedure may contain information on how to log on to the D&)(, start and stop the D&)(, how to recover the database, change the structure of the table and improve the performance. compose ,sers

User

Database (d)inistrat#r

Database Desi*ner

Database Mana*er

Database User

Database Administrator
15

(pplicati#n +r#*ra))er

End User

Database Administrator is a person having central control over data and programs accessing that data. The database administrator is a manager whose responsibilities are focus on management of technical aspects of the database system. )he ob5ecti es of database administrator are gi en us follo+s:
o To control the database environment

o To standardized of the use of database and associated software o To support the development and maintenance of database application !esponsibilities of database administrator: The responsibility of the database administrator is to maintain the integrity, security and availability of data. $ database must be protected from accidents, such as input or programming errors. )he responsibilities of database administrator are summari7ed as follo+s: o o o o $uthorizing access to the database 2oordinating and monitoring its use. $c:uiring hardware and software resources as needed. &ac up and recovery

Database Designer Database Designer can be either logical database designer or physical database designer. 5ogical database designer is concerned with identifying the data, the relationship between the data. The logical database designer must have through understanding of the organization data and its business rule. The physical database designer ta es a logical data model and decides the way in which it can be physically implemented. Database manager The database manager is a program module which provides the interface between the low level data stores in the database and the application programs and :ueries submitted to them. The database manager would translate D)5 .Data manipulate language/ statements in to low level file system commands. 1or storing, retrieving and updating data in the database. Database ,sers Database users are the people who need information from the database to carry out their business responsibilities.
16

)he data base users can be classified in to t+o categories C. D. $pplication programming End user

Application programming

$pplication programmings are the people who write an application program and interact with the database. o
o

End ,sers End users are the people interact with the system without writing programs. They forms re:uest by writing :ueries in a database :ueries language.

Data Dictionary Data dictionary also nown as 8system catalog8 is a centralized store of information about the database. It contains information about the tables, the fields, data types, primary eys, indexes, the !oins etc". This information store in the data dictionary is called the 8)etadata9 thus the data dictionary can be considered as a file that stores metadata.Data dictionary is a tool for recording and processing information about the data that an organization uses. Metadata: The information about data in the database is called metadata. The metadata available for :uery and manipulation Data Abstraction: 9eed for abstraction The main ob!ective of D&)( is to store and retrieve information efficientlyI all the users should be able to access same data. The designers use complex data structure to represent data. (o that the data can be efficiently store and retrieve. The developers hide the complexity from users through several levels of abstraction. DBMS Architecture Database )anagement (ystems are very complex, sophisticated software applications that provide reliable management of large amounts of data. To better understand general database concepts and
17

the structure and capabilities of a D&)(, it is useful to examine the architecture of a typical database management system. There are two different ways to loo at the architecture of a D&)(# the logical DBMS architecture and the physical DBMS architecture. The logical architecture deals with the way data is stored and presented to users, while the physical architecture is concerned with the software components that ma e up a D&)(. (ogical DBMS Architecture The logical architecture describes how data in the database is perceived by users. It is not concerned with how the data is handled and processed by the D&)(, but only with how it loo s. 'sers are shielded from the way data is stored on the underlying file system, and can manipulate the data without worrying about where it is located or how it is actually stored. This results in the database having different levels of abstraction. The ma!ority of commercial Database )anagement (ystems available today are based on the $+(I>(P$42 generalized D&)( architecture, as proposed by the $+(I>(P$42 (tudy 6roup on Data &ase )anagement (ystems. The $+(I>(P$42 architecture divides the system into three levels of abstraction# the internal or physical level, the conceptual level, and the external or view level. The diagram below shows the logical architecture for a typical D&)(.

Figure 3-1 Logical DBMS Architecture )he "nternal or Physical (e el


18

The collection of files permanently stored on secondary storage devices is nown as the physical database. The physical or internal level is the one closest to physical storage, and it provides a low; level description of the physical database, and an interface between the operating system?s file system and the record structures used in higher levels of abstraction. It is at this level that record types and methods of storage are defined, as well as how stored fields are represented, what physical se:uence the stored records are in, and what other physical structures exist. )he %onceptual (e el The conceptual level presents a logical view of the entire database as a unified whole, which allows you to bring all the data in the database together and see it in a consistent manner. The first stage in the design of a database is to define the conceptual view, and a D&)( provides a data definition language for this purpose. It is the conceptual level that allows a D&)( to provide data independence. The data definition language used to create the conceptual level must not specify any physical storage considerations that should be handled by the physical level. It should not provide any storage or access details, but should define the information content only. )he External or *ie+ (e el The external or view level provides a window on the conceptual view which allows the user to see only the data of interest to them. The user can be either an application program or an end user. $ny number of external schema can be defined and they can overlap each other. The (ystem $dministrator and the Database $dministrator are special cases. &ecause they have responsibilities for the design and maintenance for the design and maintenance of the database, they at times need to be able to see the entire database. The external and the conceptual view are functionally e:uivalent for these two users. Mappings Bet+een (e els 7bviously, the three levels of abstraction in the database do not exist independently of each other. There must be some correspondence, or mapping, between the levels. There are actually two mappings# the conceptual>internal mapping and the external>conceptual mapping. The conceptual>internal mapping lies between the conceptual and internal levels, and defines the correspondence between the records and the fields of the conceptual view and the files and data structures of the internal view. If the structure of the stored database is changed, then the conceptual> internal mapping must also be changed accordingly so that the view from the
19

conceptual level remains constant. It is this mapping that provides physical data independence for the database. The external>conceptual view lies between the external and conceptual levels, and defines the correspondence between a particular external view and the conceptual view. $lthough these two levels are similar, some elements found in a particular external view may be different from the conceptual view. 1or example, several fields can be combined into a single -virtual0 field, which can also have different names from the original fields. If the structure of the database at the conceptual level is changed, then the external>conceptual mapping must change accordingly so the view from the external level remains constant. It is this mapping that provides logical data independence for the database. It is also possible to have another mapping, where one external view is expressed in terms of other external views -this could be called an external>external mapping0. This is useful if several external views are closely related to one another, as it allows you to avoid mapping each of the similar external views directly to the conceptual level. Physical DBMS Architecture The physical architecture describes the software components used to enter and process data, and how these software components are related and interconnected. $lthough it is not possible to generalize the component structure of a D&)(, it is possible to identify a number of ey functions which are common to most database management systems. The components that normally implement these functions are shown in the diagram on the following page, which depicts the physical architecture for a typical D&)(. $t its most basic level the physical D&)( architecture can be bro en down into two parts# the back en and the !ront en . The bac end is responsible for managing the physical database and providing the necessary support and mappings for the internal, conceptual, and external levels described earlier. 7ther benefits of a D&)(, such as security, integrity, and access control, are also the responsibility of the bac end. The front end is really !ust any application that runs on top of the D&)(. These may be applications provided by the D&)( vendor, the user, or a third party. The user interacts with the front end, and may not even be aware that the bac end exists.

20

Figure 3-" #hysical DBMS Architecture &oth the bac end and front end can be further bro en down into the software components that are common to most types of D&)(. These components are examined in detail in the following sections. Applications and ,tilities $pplications and utilities are the main interface to the D&)( for most users. There are three main sources of applications and utilities for a D&)(# the vendor, the user, and third parties. @endor applications and utilities are provided for wor ing with or maintaining the database, and usually allow users to create and manipulate a database without the need to write custom applications. *owever, these are usually general;purpose applications and are not the best tools to use for doing specific, repetitive tas s. 'ser applications are generally custom;made application programs written for a specific purpose using a conventional programming language. This programming language is coupled to the D&)( :uery language through the application progra$ inter!ace %A#&'. This allows the user to utilize the power of the D&)( :uery language with the flexibility of a custom application.

21

Third party applications may be similar to those provided by the vendor, but with enhancements, or they may fill a perceived need that the vendor hasn?t created an application for. They can also be similar to user applications, being written for a specific purpose they thin a large ma!ority of users will need. The most common applications and utilities used with a database can be divided into several well; defined categories. These are#

%ommand (ine "nterfaces;these are character;based, interactive interfaces that let you use the full power and functionality of the D&)( :uery language directly. They allow you to manipulate the database and perform ad;hoc :ueries and see the results immediately. They are often the only method of exploiting the full power of the database without creating programs using a conventional programming language. -raphical ,ser "nterface .-,"/ tools;these are graphical, interactive interfaces that hide the complexity of the D&)( and :uery language behind an intuitive, easy to understand, and convenient interface. This allows casual users the ability to access the database without having to learn the :uery language, and it allows advanced users to :uic ly manage and manipulate the database without the trouble of entering formal commands using the :uery language. *owever, graphical interfaces usually do not provide the same level of functionality as a command line interface because it is not always possible to implement all commands or options using a graphical interface. Bac0up1!estore ,tilities;these are designed to minimize the effects of a database failure and ensure a database is restored to a consistent state if a failure does occur. )anual bac up>restore utilities re:uire the user to initiate the bac up, while automatic utilities will bac up the database at regular intervals without any intervention from the user. Proper use of a bac up>restore utility allows a D&)( to recover from a system failure correctly and reliably. (oad1,nload ,tilities;these allow the user to unload a database or parts of a database and reload the data on the same machine, or on another machine in a different location. This can be useful in several situations, such as for creating bac up copies of a database at a specific point in time, or for loading data into a new version of the database or into a completely different database. These load>unload utilities may also be used for rearranging the data in the database to improve performance, such as clustering data together in a particular way or reclaiming space occupied by data that has become obsolete. !eporting1Analysis ,tilities;these are used to analyze and report on the data contained in the database. This may include analyzing trends in data, computing values from data, or displaying data that meets some specified criteria, and then displaying or printing a report containing this information.
22

)he Application Program "nterface The application program interface -$PI0 is a library of low;level routines which operate directly on the database engine. The $PI is usually used when creating software applications with a general; purpose programming language such as 2AA or @isual &asic. This allows you to write custom software applications to suit the needs of your business, without having to develop the storage architecture as well. The storage of the data is handled by the database engine, while the input and any special analysis or reporting functions are handled by the custom application. $n $PI is specific to each D&)(, and a program written using the $PI of one D&)( cannot be used with another D&)(. This is because each $PI usually has its own uni:ue functions calls that are tied very tightly to the operation of the database. Even if two databases have the same function, they may use different parameters and function in different ways, depending on how the database designer decided to implement the function in each database. 7ne exception to this is the )icrosoft 7pen Database 2onnectivity $PI, which is designed to wor with any D&)( that supports it. )he 2uery (anguage Processor The :uery language processor is responsible for receiving :uery language statements and changing them from the English;li e syntax of the :uery language to a form the D&)( can understand. The :uery language processor usually consists of two separate parts# the parser and the :uery optimizer. The parser receives :uery language statements from application programs or command;line utilities and examines the syntax of the statements to ensure they are correct. To do this, the parser brea s a statement down into basic units of syntax and examines them to ma e sure each statement consists of the proper component parts. If the statements follow the syntax rules, the to ens are passed to the :uery optimizer. The :uery optimizer examines the :uery language statement, and tries to choose the best and most efficient way of executing the :uery. To do this, the :uery optimizer will generate several :uery plans in which operations are performed in different orders, and then try estimate which plan will execute most efficiently. <hen ma ing this estimate, the :uery optimizer may examine factors such as# 2P' time, dis time, networ time, sorting methods, and scanning methods. )he DBMS Engine The D&)( engine is the heart of the D&)(, and it is responsible for all of the data management in the D&)(. The D&)( engine usually consists of two separate parts# the transaction manager and the file manager.

23

The transaction manager maintains tables of authorization and currency control information. The D&)( may use authorization tables to allow the transaction manager to ensure the user has permission to execute the :uery language statement on the database. The authorization tables can only be modified by properly authorized user commands, which are themselves chec ed against the authorization tables. In addition, a database may also support concurrency control tables to prevent conflicts when simultaneous, conflicting commands are executed. The D&)( chec s the concurrency control tables before executing a :uery language statement to ensure that it is not loc ed by another statement. The file manager is the component responsible for all physical input>output operations on the database. It is concerned with the physical a ress of the data on the dis , and is responsible for any interaction -reads or writes0 with the host operating system Different le els of data abstraction Data abstractions are: C. D. E. Physical level 5ogical level @iew level

1. Physical level
2. It is concern with a physical storage of the information. It provides the internal view of the

actual physical storage of data.

3. Logical level (ogical le el describes what data are store in the database and what relationship exist among those data. 5ogical level describes the entire database in terms of small number of simple structure. The database administrator uses the logical level of abstraction. 4. ie! level

*ie+ le el is the highest level of abstraction. It is the view the individual user of the database has. There are many view level abstraction of the same data.

Database instances:
24

Database change over time as information is inserted and deleted. The collection of information stored in the database at a particular moment is called an instance of database.

Database schema The overall design of the database is called Database schema. (chema provides a logical classification of ob!ect in the database.

Database schema

Sub schema Physical Schema (ogical schema -Describes the different -Describe the database design-Describe the database design at views of the database0 the logical level0 at the physical level0 Ad antages of Database Management System C. D. E. F. Data Independence Data redundancy Data inconsistency 2entralizing the data

1, Data "ndependence: Data independence means the programs are isolated from changes in the

way the data structured and stored. In a database system the data base management system provides the interface between the application programs and the data. Physical data independence means the applications need not worry about how the data are physically structured and stored. $pplication should wor with the logical data model and declarative :uery language. If ma!or changes where to be made to the data, the application programs may need to be rewritten.

:. Data redundancy: Data redundancy means duplication of data. Data redundancy will occupy more space. *ence it is not desirable. -+ot wanted0 ;. Data inconsistency: Data inconsistency means different copies of the same data will have different values.
25

5. %entrali7ing )he Data: Centrali"ing data means data can easily shared between the users. &ut

the main concern is data security. Data 4edundancy Data independence Data Inconsistency 2entralizing the data Data integrity Entity !elationship Diagram E1! diagram is a graphical modeling tool to standardize E>4 modeling. The modeling can be carried out with the help of pictorial representation of entities, attribute and relationship. The basic building bloc s of entity relationship diagram are entity, attribute and relationship. Entity: $n Entity is an ob!ect that exists and is distinguishable from other ob!ects. In other words the entity can be uni:uely identified. Eg< $ particular person, a particular department, a particular place etc".. Attributes: $ttributes are properties of entity type. In other words entities are described in a database by a set of attributes. Eg. (tudents ID, +ame, &atch no are the attribute of student. !elationship: A 4elationship is a association of entity. <here the association includes one entity from each participating entity type, where relationship is a meaningful association between entity types. Eg: & &uying is a relationship between vendor and customer. -

4educe in D&)( ; $ctivated in D&)( $voided in D&)( $chieved in D&)( +ecessary for efficient transaction

Treatment is the relationship between Doctor and Patient. Teacher is the relationship between the teacher and student.

%lassification of Entity )ype The entities can be classified in to# C. D. (trong entity <ea entity

Entity
26

(trong Entity

<ea Entity

Strong Entity: strong entity is one who is existence does not depend on other entity. Eg: 2onsider the following example#

(tudent

Ta es

2ourse

In this example course is considered as wea entity, because if there are no student to ta e a particular course then that course cannot be offered. That course entity depends on the student entity. DJ;/D;D/C/ =ea0 Entity: <ea entity is one whose existence depends on other entity. Example: consider the example, customer borrows loan, hear loan is a wee entity. 1or every loan there should be at least one customer. *ence the entity loan depends on the entity customer. 2ustomer &rowse 5oan

Attribute classification $ttributes is used to describe the properties of the entity. This attributes can be classified into the following# C. (ingle value attribute D. )ulti value attribute E. Derived $ttribute F. 2omposite $ttribute G. +ull $ttribute

1. Single *alue Attribute: (ingle @alue attribute means there is only one value associated with

that attribute
27

(ymbol

Example: $ge of person, student ID, Employee ID.

2. Multi *alue Attribute: In the case of multi value attributes more than one value will be

associated with that attribute. Example: 2onsider an entity employeeI an employee can have many s ills. *ence s illed associated an employee are multi value attribute. E)pl#.ee (*e E)pl#.ee /a)e Employee S0ill Multi 1alued attribute
3. Deri ed Attribute: The @alue of Derived attribute can be derived from the values of other

related attributes are entities.

The derived attributes is represented by dotted ellipse.

E)pl#.ee /a)e

E)pl#.ee

(*e

4. %omposite attribute: 2omposite attribute is one which can be further sub divided in to simple

attribute. Example: 2onsider the attribute 8$ddress9 which can be further sub divided into street name, city, and state.

Employee Name

Street /# "it. State


28

5. 9ull Attribute: particular entity may not have any applicable value for an attribute. 1or such

situation a special value called null value is created.

Example: The attribute phone number and, if a person do not have phone than a null value entered in that column. !elationship degree 4elationship degree refers to the number of associated entities. The relationship degree can be classified in to the following types.

C. D. E.
4,

'nary 4elationship -one0 &inary 4elationship -two0 Ternary 4elationship -three0 Buaternary 4elationship -four0

,nary !elationship: The unary relationship is otherwise nown as recursive relationship. In the unary relationship the number of associated entity is one.

"aptain #$ +la.er
Binary !elationship: In binary relationship two entities are involved.

Sta$$

IS (ssi*n

Depart)ent

)ernary !elationship: In a ternary relationship three entities are simultaneously involved. Ternary relationships are re:uired when binary relationships are not sufficient 2#cati#n
29

K;/E;D/C/

Sta$$

IS (ssi*n

Depart)ent

2uaternary relationship: Buaternary relationship involved four entities Slides

2ecturer

3eaches

Student

"#urse !elationship %lassification 4elationship is association among one or more entities. This relationship can be classified in to the following# C. 7ne to one relationship D. 7ne to many relationship E. )any to one relationship F. )any to many relationship

>ne to one relationship: 7ne to one relationship is a special case of one to many

relationships. True one to one relationship is rare. Example of one to one relationship is a relationship between the president and the country.

>ne to many relationship: The relationship that associates one entity to more than one entity is called one to many relationship.

Example of one to many relationship is country having states, for one country that can be more than one state hence it is an example of one to many relationship.
Many to one relationship: The relationship between employee and department is an

example of many to one relationship. There may be many employees wor ing in one department. *ence it is an example of many to one relationship.

30

Many to many relationship: The relationship between employee and pro!ect is an example

of many to many relationships. )any employees will be wor ing in many pro!ects. *ence the relationship between employee and the pro!ect is many to many relationships.

!elationship )ype +resident 4ne -t# -4ne

!epresentation "#untr.

Example

E)pl#.ee Depart)ent 4ne -t# -Man.

Man. -t# -Man. E)pl#.ee


E)pl#.ees Man. -t# -4ne

+r#5ect Depart)ent

CF;/E;D/C/ EE! Model .Enhanced Entity !elationship Model/ The basic concepts of E4 modeling are not powerful enough for some complex application. *ence some semantic modeling concepts are re:uired. The EE4 )odel is the extension of the E4 )odel with new modeling construct. The new modeling construct introduce in the EE4 )odel are super type -super class0, subtype -sub class0 relationship. The super type allow us to model general entity type where as the subtype allow us to model specialized entity type. EE! Model L E4 )odel A hierarchical relationship

Super type are .super class/: (uper type are super class is a generic entity type, that has relationship with one or more subtype

Example: player is generic which has a relationship one more subtype li e cric et player, foot ball player.
Sub type are .Sub class/: sub type are sub class is a sub grouping of the entities in an entity type.

$ sub class entity type is a specialized entity type of super class entity type (ubtype inherit the attributes and the relationship associated with a super type.

-enerali7ation and Speciali7ation $re viewed from two opposite direction. 6eneralization is the bottom ; up process of defining a generalize entity type from a set of one or more specialized entity type.

31

(pecialization is a top;down process of defining one or more sub type of a super type. 6eneralization is a process minimizing the differences between entities by identifying common features. (pecialization is a process of identifying subset of an entity that share distinguishing characteristics.

Student Speciali6ati#n

(upper class or supper type or generic entity type 7enerali6ati# n

&ull ti)e student First Tier

+art ti)e student Database #rchitect$re

)+o )ier Architecture .%lient Architecture/ (ub class or ser suber type or specialize entity type

Task User Inter$ace +resentati#n Ser8ices (pplicati#n Ser8ices Client Secon Tier Task (pplicati#n Ser8ices Business Ser8ices Data Ser8ices

Data!ase Ser"er

The two tier architecture is a client server architecture in which the client contains the presentation code and the (B5 statements for data access. The data server process (B5 statements and sends :uery result bac to the client. The clients or first tier is primarily responsible for presentation of
32

data to the user and server or second tire is primarily is responsible for supplying data service for the client. Presentation Services% presentation services refer to the portion of the application which presents data to the user. It also provides for the mechanism in which the user will interact with the data. B$siness Services% &usiness (ervices encapsulate in organization business processes and re:uirements. These rules are derived from the steps necessary to carry out day to day to business. These rules can be validation rules. Data Services% Data (ervices provide access to the data independent to their location. Data services provide a standard interface for access in data. "1-(3-"(1( &hree &ire% )hree )ier Architecture

First Tier "lient

Task User Inter$ace +resentati#n Ser8ices Task (pplicati#n Ser8ices Business Ser8ices

Secon Tier (pplicati#n Ser8er B$siness %!&ects T#ir Tier Data Ser8er

Task Data Ser8ices Data 1alidati#n

1rom figure it is clear that in order to improve the performance a second tire is included between the client and the server. Three tire architecture provides greater application scalability, lower maintenance and increase reuse of components. Through standard tiered interfaces, services are made available through application. $ single application can employee many different services which may reside on dissimilar platform.
33

'() &ire *m$lti tire #rchitect$re+

'pplicatio n Ser"er

The multi tire architecture is the most general client server architecture. It can be most difficult to 'pplicatio Data implement because of it generality. *owever a good design and implementation of multi tire n Ser"er Ser"ercan provide a most architecture benefits in terms of scalability and flexibility. 1rom diagram the client application loo s to application serverC and to supply the data from a main frame based application. $pplication server C has no direct access to the main frame. &ut it does now, through the development of application services, that application server D provides a service to access the data from the main frame application which satisfy the client re:uest. Database model Everything is stored as ob!ect in an ob!ect based in database model. The ob!ect base database model can be defined as a collection of tool. C. Describing data D. Describing Data 4elationship

!ecord based Database Model 4ecord based database model describe the data structures and access techni:ues of D&)(. These can be divided into Four Types C. 1ile management system
2, *ierarchical database (ystem 34

E. +etwor database (ystem F. 4elational database system

#. File Management System 1ile management (ystem was a first method used to store data in a computerize database. The data item is stored se:uentially in one large file. If a particular data item has to be located the search, (tarts from the beginning and items are chec ed se:uentially till the re:uired items are found. :. 6ierarchical Database System In a ,ierarchical model data is organi"ed in a tree li-e str$ct$re. Implying -used0 the single upward lin in each record to describe the nesting and sort field to eep records in particular order, in each same line. *ierarchical structures were widely used in the early main frame database system. ;. 9et+or0 Database System Data represented by a collection of record and relationship among data or represented by lin s. This is similar to hierarchical level. It offers many to many relationship. Dr E.1.2odd first introduces the relational database model. The relational model allows data to be represented in a raw, column format. Each data field is considered as a column and each record is considered as a raw of the table. Different relationship between various tables can be achieved by a relational database model. <e can easily insert data in to the database and very easily delete data from the database. )he #: !ules 1, )he information rule: $ll information is explicitly and logically and represented in tables as data value. 2, )he rule of -uarantee Access# Every item of data in the database must be accessible with the help of a table name primary ey value and column name. Example# (elect M from employee -table name0 (elect name, student Id from student -table name0 $ primary ey prevents the entry of duplicate values and null values 3, )he database description rule: The data description of database is maintained using the same logical structure with which data was define by the 4D&)(. 4, %omprehensi e data sub language !ule: This rule support the following C. Data definition D. @iew definition
35

E. Data manipulation F. Integrity constrains G. $uthorization N. Transaction management obstructing

5, )he ie+ updating rule: $ll views that are theoretically updatable must also be updatable by the system. 6, )he "nsert and update rule: It allows data to be inserted in a database and it also allows data to be updated in a database. 7, )he Physical independence rule: $pplication programs are independent and the database is independent In order to ma e any changes in a database no need to change or update application programs

8, )he (ogical Data independence rule: the changes that are made to the database should not affect the user=s ability to wor with the data. 9, )he "ntegrity independence rule: the Integrity constraint should be store in the database as a table, but it won=t disturb the database as well as program. 10, )he distribution rule: the system must be able to access or manipulate data that is distributed in other system. 11, )he 9on Sub& ersion !ule: The non sub;version rule status the different level of the language cannot by pass the integrity rule and the constraints. In simple words if on 4DD)( support a low level language then it should not by pass then it should not by pass any integrity constraint defined in the high level language. 12, )he Systematic treatment of null alue: The 4D&)( is must be able to support null values -that are values are different from zero and spaces0 to represent missing or in applicable information. Primary 0ey $ primary ey is used as a uni:ue identifier for each record in a table. $nd it is essential when wor ing with relational tables. $ primary ey cannot have the duplicate entries. $ primary ey must be set on a field generating a uni:ue identifier. The retrieval of the data from the database can be faster with the help of primary ey.
36

Example (td id C//C C//D C//E )ypes of primary 0ey C;(ingle field primary ey D;$uto number primary ey E;multiple field primary ey (tudent name )ohamed *ussein &assam

Single field primary 0ey If we set a field to be uni:ue and not null then it is called as single field primary ey. E.g. student id, product id, employee id Auto number primary 0ey If we set a field as auto number it will automatically generate se:uential numbers. This is the one of the default primary ey in ms access. <e can=t enter the values in auto number primary ey fieldI the values will be automatically generated. Example C, D, E, F, G, N, O "etc Multiple field primary 0ey If we set more than one field in a table as primary ey then it is called multiple field primary ey. Example .order id and bill no

Foreign 0ey $ foreign ey is a column or a set of column in a table which have a corresponding relationship and a dependency on another table, specifically the dependency is on the primary ey of the table so you would have one ;to ;many relationships. (ometimes it re:uires more than one attribute to uni:uely identify an identity a primary that made up of more than one attribute is nown as composite ey. 2omposite ey Emp id /C /D /C /D /E Pros id C//J C//N C//J C//N C//K *ours wor ed J/ KN CD/ OD CF
37

Super 0ey Different set of attributes which are able to identify any row in the database is nown as super ey. 9ormali7ation +ormalization allows us to establish relationship between tables. +ormalization reduces redundancy. +ormalizations help in simplifying the structure of tables. +ormalization theory is built around the concept of normal forms. +ormalization is a process in database design which groups data into various tables. +ormalization is a systematic way of ensuring that a database structure is suitable for generate purpose :uery. Ad antages of 9ormali7ation 5arge tables can be divided into any n number of smaller tables. &rea ing the database into a numerous smaller tables and eliminating redundancies eases -easier0 database management and enhances database efficiency. Example: 'n normalized table. %ustcode %ustname Address Products C//C ali male P Q z C//N $hmed male $ C//J )ohamed male m < +ormalized table %ustcode %ustname C//C ali C//N $hmed C//J )ohamed Product table %ustcode C//C C//C C//C C//N C//J C//J

Address )ale )ale )ale

Product 9ame x y z a m n

If we split the above table into two tables we can avoid unnecessary repetition of data. &ased on the customer code we can establish relationship between customer table and product table. )here are ? le el of normali7ation.
38

C. D. E. F.

1irst normal form (econd normal form Third normal form &oyce 32odd normal

Purpose of normali7ation To avoid redundancy by storing each fact within the database only once. To put data into the form that is more able to accurately accommodate change. To avoid unnecessary coding First normal form $ table is in first normal form if and only if all columns contains only atomic values, that is there is no longer repeating groups within a row. ,n normal form to fist normal form. Dept no Dept name C +ilgris D ($( E R$D F +RD

location 2oimbatore, 2hennai 2hennai, )umbai 2oimbatore 2alcutta

2onsider a table department. The table department is not in normal form because the table has repeating groups. The intersection of row with column should have only one value but in the above table the department location value is not atomic. &ecause the location field located in more than one location. Dept no C D E F Dept name +ilgris ($( R$D +RD (ocation # 2oimbatore 2hennai 2oimbatore 2alcutta (ocation : 2hennai )umbai

The column location in first table having more than one value. 7ne way is to divide the column into location C and location D. The drawbac of this form is that if a department is started in many places than more locations li e location C, location D"" location n SE%>9D 9>!MA( F>!MS $ table is set to be second normal form if it is in first normal form and all of its non 0ey attributes depend on the 0ey. E@"D E@9ame P@"D P@9ame )otal )ime

39

E%ID ;. employee id P%ID;Pro!ect id P%+ame 3Pro!ect name E;+ame; employee name 2onsider the above table employee pro!ect which having the attributes which having the E%ID, pro!ect%id , pro!ect name , total time. The above table can be transformed to second normal form by brea ing the table into two smaller tables. E@"D C//C E@9ame ali

E@"D

P@"D

P@9ame

)otal )ime

Second normal form to third normal form $ table is in third normal form if it is in second normal form and contains no transitive dependency. To understand transitive dependency let us consider three attributes. $, & and c connected in such a way that $and & 2. In other words $2. this ind of functional dependency is nown as transitive dependency. 5et us consider a table hostel. The attributes of the table hostel are roll number, building name and fees. !oll no C// C/C C/D Building )ain additional new fee N// G// NG/

4oll number is the ey for the table hostel since the other two columns depends on roll numberI here it is in second normal form. !oll no C// C/C C/D Building main additional new Building )ain additional new fee N/ G// N//
40

Boyce &codd normal form. $ relation is in &oyce codd normal form if for non trivial functional dependency Pa super ey .&oyce codd normal form is a stronger form of normalization then normal form . (et us consider a relation. )eaching +hich has three attribute. (tudent rC 2ourse rD Instructor rE

x is a

Teaching -student, course, instructor0 In the above relation teaching, student determines the course, which determines the instructor. $lso the instructor determines the course which he has to handle. The relation teaching can be transformed in &2+1 by splitting into two relations. 4C and 4D 4C -rC, rD0 4D -rD, rE0 4E-rC,rE0 &y splitting the relation teaching into two relations 4C and 4D we have transformed the relation teaching into boyce codd normal form. Database language

DD( is classified in three categories C. 2reate Table D. $lter table E. Drop table )able $ table is a unit of storage which holds the data in the form of rows and columns 2reate table Stable name. -column definition, column definitionD".0I Example 2reate table customer -custid number -G0, name varchar -D/0, city varchar -D/00I Syntax to alter the table $lter tableStable name .modify, -column definition ""0I Example $lter table customer modify -custid number -C/00I $lter tablesStablename.addScolumn definition, column definition"0I Example $lter table customer add -address varchar -D/00I
41

CCC0 $lter table Stable name .rename column -old name to new name 0I Example $lter table customer rename column -customer name to c%name0I Syntax to drop table Drop tableStable name. Example Drop table customerI Syntax to truncate table Example Truncate customerI Data manipulation language .DM(/ D)5 commands are C0 Insert D0 (elect E0 'pdate F0 Delete Syntax to insert Insert into Stable name.value -valueC,valueD"".0I Example. Insert into customer values -C//C 8ali90I Syntax for select (elect Sdefinition.from SStable name.I Example (elect M from customerI (elect custname,custid from customer (yntax for update . 'pdate Stablename.setScolumn.Lvalue whereScolunmname.I Example 'pdate customer set nameLali where name Lahmed Distributed Database Management System $ Distributed computing system consists of number of processing elements that are inter connected by a 27)P'TE4 +ET<74R and that corporate in performing certain application tas . The distributed database is a collection of multiple logically interrelated databases. Distributed over a computer networ . The distributed database is a collection of data which belong logically to the same system but are spread over the site of a computer networ . Distribution The fact that the data are not resident at the same site, so that we can distinguish a distributed database from a single, centralize database.

42

Data!ase 1

Data!ase 2 Comp$ter 2

Comp$ter 1

(ocal Net)ork

Comp$ter 3

Data!ase 3

Database 3 DBMS #. Ad antages and application of DBMS :. %omponents of DBMS ;. !DBMS3 !ules for !DBMS ?. Database model 4. Database ArchitectureA '. E1! diagram +ith example and diagram B. EE!3 -enerali7ation and speciali7ation C. Distributed DBMS D. 9ormali7ation +ith normal forms #$. Eeys and its types +ith exam ##. D( and DM( +ith syntax and example #:. !elationship degree and relationship classification

43

44

You might also like