52
A database is an integrated collection of logically related records or files which consolidates records into a common pool of data records that provides data for many applications. A database is a collection of information that is organized so that it can easily be accessed, managed, and updated. A Database Management System (DBMS) is a set of computer programs that controls the creation, maintenance, and the use of the database of an organization and its end users . It allows organizations to place control of organization-wide database development in the hands of database administrators (DBAs) and other specialists. DBMSes may use any of a variety of database models , such as the network model or relational model . In large systems, a DBMS allows users and other software to store and retrieve data in a structured way. It helps to specify the logical organization for a database and access and use the information within a database. It provides facilities for controlling data access , enforcing data integrity , managing concurrency controlled, restoring database. Advantages of DBMS (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 then if the data were located in separate, non-integrated files. In many businesses

Assign 1

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Assign 1

A database is an integrated collection of logically related records or files which consolidates records into a common pool of data records that provides data for many applications A database is a collection of information that is organized so that it can easily be accessed managed and updated

A Database Management System (DBMS) is a set of computer programs that controls the creation maintenance and the use of the database of an organization and its end users It allows organizations to place control of organization-wide database development in the hands of database administrators (DBAs) and other specialists DBMSes may use any of a variety of database models such as the network model or relational model In large systems a DBMS allows users and other software to store and retrieve data in a structured way It helps to specify the logical organization for a database and access and use the information within a database It provides facilities for controlling data access enforcing data integrity managing concurrency controlled restoring database

Advantages of DBMS (Database Management Systems) are followings

A true DBMS offers several advantages over file processing The principal advantages

of a DBMS are the followings

bull 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

bull Fast response to information requests Because data are integrated into a single

database complex requests can be handled much more rapidly then if the data were

located in separate non-integrated files In many businesses faster response means better customer service

bull Multiple access 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 (both 3GL and nonprocedural 4GL programs)bull 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 productivitybull 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

The DBMS has a number of advantages as compared to traditional computer file-based

processing approach The DBA must keep in mind these benefits or capabilities during

designing databases coordinating and monitoring the DBMS

The main advantages of DBMS are described below

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

controlled redundancy the database system enforces consistency It means that when

data item that appears more than once In the database is updated the DBMS

automatically updates each occurrence of a data item in the database However some

database systems do not support enforce data consistency

Integration of Data

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

Database Access LanguageMany DBMSs provide SQL as database access language eg SQL to access data from

multiple tables of a database Every DBMS has its own version of SQL

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

More Advantages

Data sharing Controlling Data Redundancy Data Security Data Atomicity Creating Forms Control Over Concurrency Backup and Recovery

ProceduresData Independence Leave a comment Report

0 0

Azianswered 2 years ago Ads by Google

DatabaseSQL Tool For DB2 SQL Server Derby Mimer Informix Oracleacute and more wwwdbviscom

There are some features of a database management system

which make it attractive for using a DBMS in preference to other systems They are

given below

They are Centralized data management Data independence and Systems integration

In a database system the DBMS manages the data and all access of data is through the

DBMS providing a key to effective data processing It contrasts with conventional data

processing systems where each application program has a direct access to the data

when it reads or manipulates it

In the conventional data processing application programs the programs are usually

based on extensive knowledge of data structure and format In such an environment any

change in data structure or format would entail appropriate changes to the application

programs If major changes are to be made to the data the application programs may

have to to be rewritten

The database management system provides the interface between the application

programs and the data in a database system When there are changes made to the

data representation the metadata maintained by the DBMS is altered but the DBMS

continues the process of providing data to application programs in the previous used

ways The wherever it is necessary DBMS handles the task of transforming of data

The independence between programs and the data is called data independence It is

important because every time some change is required to be made to the data structure

The programs that were being used before the change would go on to work For

providing a high degree of data independence a DBMS must take account of a

sophisticated metadata management system

In DBMS all files are integrated into one system to reduce redundancies and make the

data management system more efficient DBMS also provides centralized control of the

operational data There are some of the advantages of data independence integration

and centralized control

Redundancies and inconsistencies can be reduced by using it It provides better service

to the Users Flexibility of the system is also improved

Cost of system development and maintenance is lower than the other Standards are

enforced Security system and integrity can be improved Project requirements can be

identified and data model are developed Leave a comment Report

0 0

Mdsrnzr226answered 2 years ago

Advantages of DBMS are given below

(1) DBMS provides Potential for Enforcing Standards In large organization database

approach allows a Database Administrator to define standards as well as gives

freedom of enforcing standards among database users In a centralized database

environment it is easy for a DBA to enforce standards than in those environments where

each user has control over his own files

(2) DBMS Provides Reduced Application Development Time No doubt it takes more

time for designing a database than making a single application but once a database is

created then it becomes very easy to make new application by using facilities provided

by DBMS

(3) DBMS provides flexibility To the requirements we have to do changes in database

Using DBMS we can change the structure of database and advantage is that it will not

affect on the existing database

(4) When a single user modifies the database then all the other users of database can

see this modification (update)

(5) DBMS provides multiple user interfaces

(6) DBMS provides storage structure for Efficient Query Processing

(7) DBMS provide a mechanism for controlling redundancy

(8) DBMS provides backup and recovery

(9) DBMS enforce integrity constraints

(10) DBMS provides Persistent storage for program objects Leave a comment Report

0 0

Honestanswered 2 years ago

Security is important advantage of DBMS

Next We may see data in different view

Example

All the Bank Database cant see by the Pune But some of the details about the

clients of the bank like name and addresses may see by the pune

But entire database can view by the manager of the Bank

This will done with the help of db

Data Integrity

Functional Dependency Leave a comment Report

0 0

Karthikasanswered 2 months ago

14 ADVANTAGES OF USING DBMS

1Controlling Redundancy In traditional file processing every user group maintains its own files Each group independently keeps files on their db eg students Therefore much of the data is stored twice or more Redundancy leads to several problems

duplication of effortstorage space wasted when the same data is stored repeatedly files that represent the same data may become inconsistent (since the

updates are applied independently by each users group)We can use controlled redundancy

2Restricting Unauthorized Access A DBMS should provide a security and authorization subsystem

Some db users will not be authorized to access all information in the db (eg financial data)

Some users are allowed only to retrieve dataSome users are allowed both to retrieve and to update database

3Providing Persistent Storage for Program Objects and Data StructuresData structure provided by DBMS must be compatible with the programming languagersquos data structures Eg Object oriented DBMS are compatible with programming languages such as C++ SMALLTALK and the DBMS software automatically performs conversions between programming data structure and file formats

4Permitting Inferencing and Actions Using Deduction RulesDeductive database systems provide capabilities for defining deduction rules for inferencing new information from the stored database facts

5Providing Multiple User Interfaces (eg query languages programming languages interfaces forms menu-driven interfaces etc) 6Representing Complex Relationships Among Data

7Enforcing Integrity Constraints

8Providing Backup and Recovery(must provide facilities for recovering from hardware or software failures)

=------------------------------Disadvantages of using a DBMS

A database system generally provides on-line access to the database for many users In contrast a conventional system is often designed to meet a specific need and therefore generally provides access to only a small number of users Because of the larger number of users accessing the data when a database is used the enterprise may involve additional risks as compared to a conventional data processing system in the following areas

1 Confidentiality privacy and security 2 Data quality 3 Data integrity 4 Enterprise vulnerability may be higher 5 The cost of using DBMS

Confidentiality Privacy and Security

When information is centralised and is made available to users from remote locations the possibilities of abuse are often more than in a conventional data processing system To

reduce the chances of unauthorised users accessing sensitive information it is necessary to take technical administrative and possibly legal measures

Most databases store valuable information that must be protected against deliberate trespass and destruction

Data Quality

Since the database is accessible to users remotely adequate controls are needed to control users updating data and to control data quality With increased number of users accessing data directly there are enormous opportunities for users to damage the data Unless there are suitable controls the data quality may be compromised

Data Integrity

Since a large number of users could be using a database concurrently technical safeguards are necessary to ensure that the data remain correct during operation The main threat to data integrity comes from several different users attempting to update the same data at the same time The database therefore needs to be protected against inadvertent changes by the users

Enterprise Vulnerability

Centralising all data of an enterprise in one database may mean that the database becomes an indispensible resource The survival of the enterprise may depend on reliable information being available from its database The enterprise therefore becomes vulnerable to the destruction of the database or to unauthorised modification of the database

The Cost of using a DBMS

Conventional data processing systems are typically designed to run a number of well-defined preplanned processes Such systems are often tuned to run efficiently for the processes that they were designed for Although the conventional systems are usually fairly inflexible in that new applications may be difficult to implement andor expensive to run they are usually very efficient for the applications they are designed for

The database approach on the other hand provides a flexible alternative where new applications can be developed relatively inexpensively The flexible approach is not without its costs and one of these costs is the additional cost of running applications that the conventional system was designed for Using standardised software is almost always less machine efficient than specialised software

Database - Advantages amp Disadvantages

Advantages

Reduced data redundancy Reduced updating errors and increased consistency Greater data integrity and independence from applications

programs Improved data access to users through use of host and query

languages Improved data security Reduced data entry storage and retrieval costs Facilitated development of new applications program

Disadvantages

Database systems are complex difficult and time-consuming to design

Substantial hardware and software start-up costs Damage to database affects virtually all applications programs Extensive conversion costs in moving form a file-based system to

a database system

Initial training required for all programmers and users

RDBMS Concepts1 What is database

A database is a logically coherent collection of data with some inherent meaning

representing some aspect of real world and which is designed built and populated

with data for a specific purpose

2 What is DBMSIt is a collection of programs that enables user to create and maintain a database

In other words it is general-purpose software that provides the users with the processes of defining constructing and manipulating the database for various applications

3 What is a Database systemThe database and DBMS software together is called as Database system

4 Advantages of DBMS

Redundancy is controlled Unauthorised access is restricted Providing multiple user interfaces Enforcing integrity constraints Providing backup and recovery

5 Disadvantage in File Processing System Data redundancy amp inconsistency Difficult in accessing data Data isolation Data integrity Concurrent access is not possible Security Problems

6 Describe the three levels of data abstractionThe are three levels of abstraction

Physical level The lowest level of abstraction describes how data are stored Logical level The next higher level of abstraction describes what data are stored in

database and what relationship among those data View level The highest level of abstraction describes only part of entire database7 Define the integrity rules

There are two Integrity rules Entity Integrity States that ldquoPrimary key cannot have NULL valuerdquo Referential Integrity States that ldquoForeign Key can be either a NULL value

or should be Primary Key value of other relation

8 What is extension and intensionExtension -

It is the number of tuples present in a table at any instance This is time dependent

Intension - It is a constant value that gives the name structure of table and the

constraints laid on it

9 What is System R What are its two major subsystemsSystem R was designed and developed over a period of 1974-79 at IBM San Jose

Research Center It is a prototype and its purpose was to demonstrate that it is possible to build a Relational System that can be used in a real life environment to solve real life problems with performance at least comparable to that of existing system

Its two subsystems are Research Storage System Relational Data System

10 How is the data structure of System R different from the relational structure Unlike Relational systems in System R

Domains are not supported

Enforcement of candidate key uniqueness is optional Enforcement of entity integrity is optional Referential integrity is not enforced

11 What is Data IndependenceData independence means that ldquothe application is independent of the storage

structure and access strategy of datardquo In other words The ability to modify the schema definition in one level should not affect the schema definition in the next higher level

Two types of Data Independence Physical Data Independence Modification in physical level should not

affect the logical level Logical Data Independence Modification in logical level should affect the

view level NOTE Logical Data Independence is more difficult to achieve

12 What is a view How it is related to data independenceA view may be thought of as a virtual table that is a table that does not really

exist in its own right but is instead derived from one or more underlying base table In other words there is no stored file that direct represents the view instead a definition of view is stored in data dictionary

Growth and restructuring of base tables is not reflected in views Thus the view can insulate users from the effects of restructuring and growth in the database Hence accounts for logical data independence

13 What is Data Model A collection of conceptual tools for describing data data relationships data

semantics and constraints

14 What is E-R modelThis data model is based on real world that consists of basic objects called entities

and of relationship among these objects Entities are described in a database by a set of attributes

15 What is Object Oriented modelThis model is based on collection of objects An object contains values stored in

instance variables with in the object An object also contains bodies of code that operate on the object These bodies of code are called methods Objects that contain same types of values and the same methods are grouped together into classes

16 What is an EntityIt is a thing in the real world with an independent existence

17 What is an Entity typeIt is a collection (set) of entities that have same attributes

18 What is an Entity set

It is a collection of all entities of particular entity type in the database

19 What is an Extension of entity typeThe collections of entities of a particular entity type are grouped together into an

entity set

20 What is Weak Entity setAn entity set may not have sufficient attributes to form a primary key and its

primary key compromises of its partial key and primary key of its parent entity then it is said to be Weak Entity set

21 What is an attributeIt is a particular property which describes the entity

22 What is a Relation Schema and a RelationA relation Schema denoted by R(A1 A2 hellip An) is made up of the relation name

R and the list of attributes Ai that it contains A relation is defined as a set of tuples Let r be the relation which contains set tuples (t1 t2 t3 tn) Each tuple is an ordered list of n-values t=(v1v2 vn)

23 What is degree of a RelationIt is the number of attribute of its relation schema

24 What is RelationshipIt is an association among two or more entities

25 What is Relationship set The collection (or set) of similar relationships

26 What is Relationship type Relationship type defines a set of associations or a relationship set among a given

set of entity types 27 What is degree of Relationship type

It is the number of entity type participating

25 What is DDL (Data Definition Language)A data base schema is specifies by a set of definitions expressed by a special

language called DDL

26 What is VDL (View Definition Language)It specifies user views and their mappings to the conceptual schema

27 What is SDL (Storage Definition Language)This language is to specify the internal schema This language may specify the

mapping between two schemas

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 2: Assign 1

The main advantages of DBMS are described below

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

controlled redundancy the database system enforces consistency It means that when

data item that appears more than once In the database is updated the DBMS

automatically updates each occurrence of a data item in the database However some

database systems do not support enforce data consistency

Integration of Data

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

Database Access LanguageMany DBMSs provide SQL as database access language eg SQL to access data from

multiple tables of a database Every DBMS has its own version of SQL

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

More Advantages

Data sharing Controlling Data Redundancy Data Security Data Atomicity Creating Forms Control Over Concurrency Backup and Recovery

ProceduresData Independence Leave a comment Report

0 0

Azianswered 2 years ago Ads by Google

DatabaseSQL Tool For DB2 SQL Server Derby Mimer Informix Oracleacute and more wwwdbviscom

There are some features of a database management system

which make it attractive for using a DBMS in preference to other systems They are

given below

They are Centralized data management Data independence and Systems integration

In a database system the DBMS manages the data and all access of data is through the

DBMS providing a key to effective data processing It contrasts with conventional data

processing systems where each application program has a direct access to the data

when it reads or manipulates it

In the conventional data processing application programs the programs are usually

based on extensive knowledge of data structure and format In such an environment any

change in data structure or format would entail appropriate changes to the application

programs If major changes are to be made to the data the application programs may

have to to be rewritten

The database management system provides the interface between the application

programs and the data in a database system When there are changes made to the

data representation the metadata maintained by the DBMS is altered but the DBMS

continues the process of providing data to application programs in the previous used

ways The wherever it is necessary DBMS handles the task of transforming of data

The independence between programs and the data is called data independence It is

important because every time some change is required to be made to the data structure

The programs that were being used before the change would go on to work For

providing a high degree of data independence a DBMS must take account of a

sophisticated metadata management system

In DBMS all files are integrated into one system to reduce redundancies and make the

data management system more efficient DBMS also provides centralized control of the

operational data There are some of the advantages of data independence integration

and centralized control

Redundancies and inconsistencies can be reduced by using it It provides better service

to the Users Flexibility of the system is also improved

Cost of system development and maintenance is lower than the other Standards are

enforced Security system and integrity can be improved Project requirements can be

identified and data model are developed Leave a comment Report

0 0

Mdsrnzr226answered 2 years ago

Advantages of DBMS are given below

(1) DBMS provides Potential for Enforcing Standards In large organization database

approach allows a Database Administrator to define standards as well as gives

freedom of enforcing standards among database users In a centralized database

environment it is easy for a DBA to enforce standards than in those environments where

each user has control over his own files

(2) DBMS Provides Reduced Application Development Time No doubt it takes more

time for designing a database than making a single application but once a database is

created then it becomes very easy to make new application by using facilities provided

by DBMS

(3) DBMS provides flexibility To the requirements we have to do changes in database

Using DBMS we can change the structure of database and advantage is that it will not

affect on the existing database

(4) When a single user modifies the database then all the other users of database can

see this modification (update)

(5) DBMS provides multiple user interfaces

(6) DBMS provides storage structure for Efficient Query Processing

(7) DBMS provide a mechanism for controlling redundancy

(8) DBMS provides backup and recovery

(9) DBMS enforce integrity constraints

(10) DBMS provides Persistent storage for program objects Leave a comment Report

0 0

Honestanswered 2 years ago

Security is important advantage of DBMS

Next We may see data in different view

Example

All the Bank Database cant see by the Pune But some of the details about the

clients of the bank like name and addresses may see by the pune

But entire database can view by the manager of the Bank

This will done with the help of db

Data Integrity

Functional Dependency Leave a comment Report

0 0

Karthikasanswered 2 months ago

14 ADVANTAGES OF USING DBMS

1Controlling Redundancy In traditional file processing every user group maintains its own files Each group independently keeps files on their db eg students Therefore much of the data is stored twice or more Redundancy leads to several problems

duplication of effortstorage space wasted when the same data is stored repeatedly files that represent the same data may become inconsistent (since the

updates are applied independently by each users group)We can use controlled redundancy

2Restricting Unauthorized Access A DBMS should provide a security and authorization subsystem

Some db users will not be authorized to access all information in the db (eg financial data)

Some users are allowed only to retrieve dataSome users are allowed both to retrieve and to update database

3Providing Persistent Storage for Program Objects and Data StructuresData structure provided by DBMS must be compatible with the programming languagersquos data structures Eg Object oriented DBMS are compatible with programming languages such as C++ SMALLTALK and the DBMS software automatically performs conversions between programming data structure and file formats

4Permitting Inferencing and Actions Using Deduction RulesDeductive database systems provide capabilities for defining deduction rules for inferencing new information from the stored database facts

5Providing Multiple User Interfaces (eg query languages programming languages interfaces forms menu-driven interfaces etc) 6Representing Complex Relationships Among Data

7Enforcing Integrity Constraints

8Providing Backup and Recovery(must provide facilities for recovering from hardware or software failures)

=------------------------------Disadvantages of using a DBMS

A database system generally provides on-line access to the database for many users In contrast a conventional system is often designed to meet a specific need and therefore generally provides access to only a small number of users Because of the larger number of users accessing the data when a database is used the enterprise may involve additional risks as compared to a conventional data processing system in the following areas

1 Confidentiality privacy and security 2 Data quality 3 Data integrity 4 Enterprise vulnerability may be higher 5 The cost of using DBMS

Confidentiality Privacy and Security

When information is centralised and is made available to users from remote locations the possibilities of abuse are often more than in a conventional data processing system To

reduce the chances of unauthorised users accessing sensitive information it is necessary to take technical administrative and possibly legal measures

Most databases store valuable information that must be protected against deliberate trespass and destruction

Data Quality

Since the database is accessible to users remotely adequate controls are needed to control users updating data and to control data quality With increased number of users accessing data directly there are enormous opportunities for users to damage the data Unless there are suitable controls the data quality may be compromised

Data Integrity

Since a large number of users could be using a database concurrently technical safeguards are necessary to ensure that the data remain correct during operation The main threat to data integrity comes from several different users attempting to update the same data at the same time The database therefore needs to be protected against inadvertent changes by the users

Enterprise Vulnerability

Centralising all data of an enterprise in one database may mean that the database becomes an indispensible resource The survival of the enterprise may depend on reliable information being available from its database The enterprise therefore becomes vulnerable to the destruction of the database or to unauthorised modification of the database

The Cost of using a DBMS

Conventional data processing systems are typically designed to run a number of well-defined preplanned processes Such systems are often tuned to run efficiently for the processes that they were designed for Although the conventional systems are usually fairly inflexible in that new applications may be difficult to implement andor expensive to run they are usually very efficient for the applications they are designed for

The database approach on the other hand provides a flexible alternative where new applications can be developed relatively inexpensively The flexible approach is not without its costs and one of these costs is the additional cost of running applications that the conventional system was designed for Using standardised software is almost always less machine efficient than specialised software

Database - Advantages amp Disadvantages

Advantages

Reduced data redundancy Reduced updating errors and increased consistency Greater data integrity and independence from applications

programs Improved data access to users through use of host and query

languages Improved data security Reduced data entry storage and retrieval costs Facilitated development of new applications program

Disadvantages

Database systems are complex difficult and time-consuming to design

Substantial hardware and software start-up costs Damage to database affects virtually all applications programs Extensive conversion costs in moving form a file-based system to

a database system

Initial training required for all programmers and users

RDBMS Concepts1 What is database

A database is a logically coherent collection of data with some inherent meaning

representing some aspect of real world and which is designed built and populated

with data for a specific purpose

2 What is DBMSIt is a collection of programs that enables user to create and maintain a database

In other words it is general-purpose software that provides the users with the processes of defining constructing and manipulating the database for various applications

3 What is a Database systemThe database and DBMS software together is called as Database system

4 Advantages of DBMS

Redundancy is controlled Unauthorised access is restricted Providing multiple user interfaces Enforcing integrity constraints Providing backup and recovery

5 Disadvantage in File Processing System Data redundancy amp inconsistency Difficult in accessing data Data isolation Data integrity Concurrent access is not possible Security Problems

6 Describe the three levels of data abstractionThe are three levels of abstraction

Physical level The lowest level of abstraction describes how data are stored Logical level The next higher level of abstraction describes what data are stored in

database and what relationship among those data View level The highest level of abstraction describes only part of entire database7 Define the integrity rules

There are two Integrity rules Entity Integrity States that ldquoPrimary key cannot have NULL valuerdquo Referential Integrity States that ldquoForeign Key can be either a NULL value

or should be Primary Key value of other relation

8 What is extension and intensionExtension -

It is the number of tuples present in a table at any instance This is time dependent

Intension - It is a constant value that gives the name structure of table and the

constraints laid on it

9 What is System R What are its two major subsystemsSystem R was designed and developed over a period of 1974-79 at IBM San Jose

Research Center It is a prototype and its purpose was to demonstrate that it is possible to build a Relational System that can be used in a real life environment to solve real life problems with performance at least comparable to that of existing system

Its two subsystems are Research Storage System Relational Data System

10 How is the data structure of System R different from the relational structure Unlike Relational systems in System R

Domains are not supported

Enforcement of candidate key uniqueness is optional Enforcement of entity integrity is optional Referential integrity is not enforced

11 What is Data IndependenceData independence means that ldquothe application is independent of the storage

structure and access strategy of datardquo In other words The ability to modify the schema definition in one level should not affect the schema definition in the next higher level

Two types of Data Independence Physical Data Independence Modification in physical level should not

affect the logical level Logical Data Independence Modification in logical level should affect the

view level NOTE Logical Data Independence is more difficult to achieve

12 What is a view How it is related to data independenceA view may be thought of as a virtual table that is a table that does not really

exist in its own right but is instead derived from one or more underlying base table In other words there is no stored file that direct represents the view instead a definition of view is stored in data dictionary

Growth and restructuring of base tables is not reflected in views Thus the view can insulate users from the effects of restructuring and growth in the database Hence accounts for logical data independence

13 What is Data Model A collection of conceptual tools for describing data data relationships data

semantics and constraints

14 What is E-R modelThis data model is based on real world that consists of basic objects called entities

and of relationship among these objects Entities are described in a database by a set of attributes

15 What is Object Oriented modelThis model is based on collection of objects An object contains values stored in

instance variables with in the object An object also contains bodies of code that operate on the object These bodies of code are called methods Objects that contain same types of values and the same methods are grouped together into classes

16 What is an EntityIt is a thing in the real world with an independent existence

17 What is an Entity typeIt is a collection (set) of entities that have same attributes

18 What is an Entity set

It is a collection of all entities of particular entity type in the database

19 What is an Extension of entity typeThe collections of entities of a particular entity type are grouped together into an

entity set

20 What is Weak Entity setAn entity set may not have sufficient attributes to form a primary key and its

primary key compromises of its partial key and primary key of its parent entity then it is said to be Weak Entity set

21 What is an attributeIt is a particular property which describes the entity

22 What is a Relation Schema and a RelationA relation Schema denoted by R(A1 A2 hellip An) is made up of the relation name

R and the list of attributes Ai that it contains A relation is defined as a set of tuples Let r be the relation which contains set tuples (t1 t2 t3 tn) Each tuple is an ordered list of n-values t=(v1v2 vn)

23 What is degree of a RelationIt is the number of attribute of its relation schema

24 What is RelationshipIt is an association among two or more entities

25 What is Relationship set The collection (or set) of similar relationships

26 What is Relationship type Relationship type defines a set of associations or a relationship set among a given

set of entity types 27 What is degree of Relationship type

It is the number of entity type participating

25 What is DDL (Data Definition Language)A data base schema is specifies by a set of definitions expressed by a special

language called DDL

26 What is VDL (View Definition Language)It specifies user views and their mappings to the conceptual schema

27 What is SDL (Storage Definition Language)This language is to specify the internal schema This language may specify the

mapping between two schemas

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 3: Assign 1

DatabaseSQL Tool For DB2 SQL Server Derby Mimer Informix Oracleacute and more wwwdbviscom

There are some features of a database management system

which make it attractive for using a DBMS in preference to other systems They are

given below

They are Centralized data management Data independence and Systems integration

In a database system the DBMS manages the data and all access of data is through the

DBMS providing a key to effective data processing It contrasts with conventional data

processing systems where each application program has a direct access to the data

when it reads or manipulates it

In the conventional data processing application programs the programs are usually

based on extensive knowledge of data structure and format In such an environment any

change in data structure or format would entail appropriate changes to the application

programs If major changes are to be made to the data the application programs may

have to to be rewritten

The database management system provides the interface between the application

programs and the data in a database system When there are changes made to the

data representation the metadata maintained by the DBMS is altered but the DBMS

continues the process of providing data to application programs in the previous used

ways The wherever it is necessary DBMS handles the task of transforming of data

The independence between programs and the data is called data independence It is

important because every time some change is required to be made to the data structure

The programs that were being used before the change would go on to work For

providing a high degree of data independence a DBMS must take account of a

sophisticated metadata management system

In DBMS all files are integrated into one system to reduce redundancies and make the

data management system more efficient DBMS also provides centralized control of the

operational data There are some of the advantages of data independence integration

and centralized control

Redundancies and inconsistencies can be reduced by using it It provides better service

to the Users Flexibility of the system is also improved

Cost of system development and maintenance is lower than the other Standards are

enforced Security system and integrity can be improved Project requirements can be

identified and data model are developed Leave a comment Report

0 0

Mdsrnzr226answered 2 years ago

Advantages of DBMS are given below

(1) DBMS provides Potential for Enforcing Standards In large organization database

approach allows a Database Administrator to define standards as well as gives

freedom of enforcing standards among database users In a centralized database

environment it is easy for a DBA to enforce standards than in those environments where

each user has control over his own files

(2) DBMS Provides Reduced Application Development Time No doubt it takes more

time for designing a database than making a single application but once a database is

created then it becomes very easy to make new application by using facilities provided

by DBMS

(3) DBMS provides flexibility To the requirements we have to do changes in database

Using DBMS we can change the structure of database and advantage is that it will not

affect on the existing database

(4) When a single user modifies the database then all the other users of database can

see this modification (update)

(5) DBMS provides multiple user interfaces

(6) DBMS provides storage structure for Efficient Query Processing

(7) DBMS provide a mechanism for controlling redundancy

(8) DBMS provides backup and recovery

(9) DBMS enforce integrity constraints

(10) DBMS provides Persistent storage for program objects Leave a comment Report

0 0

Honestanswered 2 years ago

Security is important advantage of DBMS

Next We may see data in different view

Example

All the Bank Database cant see by the Pune But some of the details about the

clients of the bank like name and addresses may see by the pune

But entire database can view by the manager of the Bank

This will done with the help of db

Data Integrity

Functional Dependency Leave a comment Report

0 0

Karthikasanswered 2 months ago

14 ADVANTAGES OF USING DBMS

1Controlling Redundancy In traditional file processing every user group maintains its own files Each group independently keeps files on their db eg students Therefore much of the data is stored twice or more Redundancy leads to several problems

duplication of effortstorage space wasted when the same data is stored repeatedly files that represent the same data may become inconsistent (since the

updates are applied independently by each users group)We can use controlled redundancy

2Restricting Unauthorized Access A DBMS should provide a security and authorization subsystem

Some db users will not be authorized to access all information in the db (eg financial data)

Some users are allowed only to retrieve dataSome users are allowed both to retrieve and to update database

3Providing Persistent Storage for Program Objects and Data StructuresData structure provided by DBMS must be compatible with the programming languagersquos data structures Eg Object oriented DBMS are compatible with programming languages such as C++ SMALLTALK and the DBMS software automatically performs conversions between programming data structure and file formats

4Permitting Inferencing and Actions Using Deduction RulesDeductive database systems provide capabilities for defining deduction rules for inferencing new information from the stored database facts

5Providing Multiple User Interfaces (eg query languages programming languages interfaces forms menu-driven interfaces etc) 6Representing Complex Relationships Among Data

7Enforcing Integrity Constraints

8Providing Backup and Recovery(must provide facilities for recovering from hardware or software failures)

=------------------------------Disadvantages of using a DBMS

A database system generally provides on-line access to the database for many users In contrast a conventional system is often designed to meet a specific need and therefore generally provides access to only a small number of users Because of the larger number of users accessing the data when a database is used the enterprise may involve additional risks as compared to a conventional data processing system in the following areas

1 Confidentiality privacy and security 2 Data quality 3 Data integrity 4 Enterprise vulnerability may be higher 5 The cost of using DBMS

Confidentiality Privacy and Security

When information is centralised and is made available to users from remote locations the possibilities of abuse are often more than in a conventional data processing system To

reduce the chances of unauthorised users accessing sensitive information it is necessary to take technical administrative and possibly legal measures

Most databases store valuable information that must be protected against deliberate trespass and destruction

Data Quality

Since the database is accessible to users remotely adequate controls are needed to control users updating data and to control data quality With increased number of users accessing data directly there are enormous opportunities for users to damage the data Unless there are suitable controls the data quality may be compromised

Data Integrity

Since a large number of users could be using a database concurrently technical safeguards are necessary to ensure that the data remain correct during operation The main threat to data integrity comes from several different users attempting to update the same data at the same time The database therefore needs to be protected against inadvertent changes by the users

Enterprise Vulnerability

Centralising all data of an enterprise in one database may mean that the database becomes an indispensible resource The survival of the enterprise may depend on reliable information being available from its database The enterprise therefore becomes vulnerable to the destruction of the database or to unauthorised modification of the database

The Cost of using a DBMS

Conventional data processing systems are typically designed to run a number of well-defined preplanned processes Such systems are often tuned to run efficiently for the processes that they were designed for Although the conventional systems are usually fairly inflexible in that new applications may be difficult to implement andor expensive to run they are usually very efficient for the applications they are designed for

The database approach on the other hand provides a flexible alternative where new applications can be developed relatively inexpensively The flexible approach is not without its costs and one of these costs is the additional cost of running applications that the conventional system was designed for Using standardised software is almost always less machine efficient than specialised software

Database - Advantages amp Disadvantages

Advantages

Reduced data redundancy Reduced updating errors and increased consistency Greater data integrity and independence from applications

programs Improved data access to users through use of host and query

languages Improved data security Reduced data entry storage and retrieval costs Facilitated development of new applications program

Disadvantages

Database systems are complex difficult and time-consuming to design

Substantial hardware and software start-up costs Damage to database affects virtually all applications programs Extensive conversion costs in moving form a file-based system to

a database system

Initial training required for all programmers and users

RDBMS Concepts1 What is database

A database is a logically coherent collection of data with some inherent meaning

representing some aspect of real world and which is designed built and populated

with data for a specific purpose

2 What is DBMSIt is a collection of programs that enables user to create and maintain a database

In other words it is general-purpose software that provides the users with the processes of defining constructing and manipulating the database for various applications

3 What is a Database systemThe database and DBMS software together is called as Database system

4 Advantages of DBMS

Redundancy is controlled Unauthorised access is restricted Providing multiple user interfaces Enforcing integrity constraints Providing backup and recovery

5 Disadvantage in File Processing System Data redundancy amp inconsistency Difficult in accessing data Data isolation Data integrity Concurrent access is not possible Security Problems

6 Describe the three levels of data abstractionThe are three levels of abstraction

Physical level The lowest level of abstraction describes how data are stored Logical level The next higher level of abstraction describes what data are stored in

database and what relationship among those data View level The highest level of abstraction describes only part of entire database7 Define the integrity rules

There are two Integrity rules Entity Integrity States that ldquoPrimary key cannot have NULL valuerdquo Referential Integrity States that ldquoForeign Key can be either a NULL value

or should be Primary Key value of other relation

8 What is extension and intensionExtension -

It is the number of tuples present in a table at any instance This is time dependent

Intension - It is a constant value that gives the name structure of table and the

constraints laid on it

9 What is System R What are its two major subsystemsSystem R was designed and developed over a period of 1974-79 at IBM San Jose

Research Center It is a prototype and its purpose was to demonstrate that it is possible to build a Relational System that can be used in a real life environment to solve real life problems with performance at least comparable to that of existing system

Its two subsystems are Research Storage System Relational Data System

10 How is the data structure of System R different from the relational structure Unlike Relational systems in System R

Domains are not supported

Enforcement of candidate key uniqueness is optional Enforcement of entity integrity is optional Referential integrity is not enforced

11 What is Data IndependenceData independence means that ldquothe application is independent of the storage

structure and access strategy of datardquo In other words The ability to modify the schema definition in one level should not affect the schema definition in the next higher level

Two types of Data Independence Physical Data Independence Modification in physical level should not

affect the logical level Logical Data Independence Modification in logical level should affect the

view level NOTE Logical Data Independence is more difficult to achieve

12 What is a view How it is related to data independenceA view may be thought of as a virtual table that is a table that does not really

exist in its own right but is instead derived from one or more underlying base table In other words there is no stored file that direct represents the view instead a definition of view is stored in data dictionary

Growth and restructuring of base tables is not reflected in views Thus the view can insulate users from the effects of restructuring and growth in the database Hence accounts for logical data independence

13 What is Data Model A collection of conceptual tools for describing data data relationships data

semantics and constraints

14 What is E-R modelThis data model is based on real world that consists of basic objects called entities

and of relationship among these objects Entities are described in a database by a set of attributes

15 What is Object Oriented modelThis model is based on collection of objects An object contains values stored in

instance variables with in the object An object also contains bodies of code that operate on the object These bodies of code are called methods Objects that contain same types of values and the same methods are grouped together into classes

16 What is an EntityIt is a thing in the real world with an independent existence

17 What is an Entity typeIt is a collection (set) of entities that have same attributes

18 What is an Entity set

It is a collection of all entities of particular entity type in the database

19 What is an Extension of entity typeThe collections of entities of a particular entity type are grouped together into an

entity set

20 What is Weak Entity setAn entity set may not have sufficient attributes to form a primary key and its

primary key compromises of its partial key and primary key of its parent entity then it is said to be Weak Entity set

21 What is an attributeIt is a particular property which describes the entity

22 What is a Relation Schema and a RelationA relation Schema denoted by R(A1 A2 hellip An) is made up of the relation name

R and the list of attributes Ai that it contains A relation is defined as a set of tuples Let r be the relation which contains set tuples (t1 t2 t3 tn) Each tuple is an ordered list of n-values t=(v1v2 vn)

23 What is degree of a RelationIt is the number of attribute of its relation schema

24 What is RelationshipIt is an association among two or more entities

25 What is Relationship set The collection (or set) of similar relationships

26 What is Relationship type Relationship type defines a set of associations or a relationship set among a given

set of entity types 27 What is degree of Relationship type

It is the number of entity type participating

25 What is DDL (Data Definition Language)A data base schema is specifies by a set of definitions expressed by a special

language called DDL

26 What is VDL (View Definition Language)It specifies user views and their mappings to the conceptual schema

27 What is SDL (Storage Definition Language)This language is to specify the internal schema This language may specify the

mapping between two schemas

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 4: Assign 1

Redundancies and inconsistencies can be reduced by using it It provides better service

to the Users Flexibility of the system is also improved

Cost of system development and maintenance is lower than the other Standards are

enforced Security system and integrity can be improved Project requirements can be

identified and data model are developed Leave a comment Report

0 0

Mdsrnzr226answered 2 years ago

Advantages of DBMS are given below

(1) DBMS provides Potential for Enforcing Standards In large organization database

approach allows a Database Administrator to define standards as well as gives

freedom of enforcing standards among database users In a centralized database

environment it is easy for a DBA to enforce standards than in those environments where

each user has control over his own files

(2) DBMS Provides Reduced Application Development Time No doubt it takes more

time for designing a database than making a single application but once a database is

created then it becomes very easy to make new application by using facilities provided

by DBMS

(3) DBMS provides flexibility To the requirements we have to do changes in database

Using DBMS we can change the structure of database and advantage is that it will not

affect on the existing database

(4) When a single user modifies the database then all the other users of database can

see this modification (update)

(5) DBMS provides multiple user interfaces

(6) DBMS provides storage structure for Efficient Query Processing

(7) DBMS provide a mechanism for controlling redundancy

(8) DBMS provides backup and recovery

(9) DBMS enforce integrity constraints

(10) DBMS provides Persistent storage for program objects Leave a comment Report

0 0

Honestanswered 2 years ago

Security is important advantage of DBMS

Next We may see data in different view

Example

All the Bank Database cant see by the Pune But some of the details about the

clients of the bank like name and addresses may see by the pune

But entire database can view by the manager of the Bank

This will done with the help of db

Data Integrity

Functional Dependency Leave a comment Report

0 0

Karthikasanswered 2 months ago

14 ADVANTAGES OF USING DBMS

1Controlling Redundancy In traditional file processing every user group maintains its own files Each group independently keeps files on their db eg students Therefore much of the data is stored twice or more Redundancy leads to several problems

duplication of effortstorage space wasted when the same data is stored repeatedly files that represent the same data may become inconsistent (since the

updates are applied independently by each users group)We can use controlled redundancy

2Restricting Unauthorized Access A DBMS should provide a security and authorization subsystem

Some db users will not be authorized to access all information in the db (eg financial data)

Some users are allowed only to retrieve dataSome users are allowed both to retrieve and to update database

3Providing Persistent Storage for Program Objects and Data StructuresData structure provided by DBMS must be compatible with the programming languagersquos data structures Eg Object oriented DBMS are compatible with programming languages such as C++ SMALLTALK and the DBMS software automatically performs conversions between programming data structure and file formats

4Permitting Inferencing and Actions Using Deduction RulesDeductive database systems provide capabilities for defining deduction rules for inferencing new information from the stored database facts

5Providing Multiple User Interfaces (eg query languages programming languages interfaces forms menu-driven interfaces etc) 6Representing Complex Relationships Among Data

7Enforcing Integrity Constraints

8Providing Backup and Recovery(must provide facilities for recovering from hardware or software failures)

=------------------------------Disadvantages of using a DBMS

A database system generally provides on-line access to the database for many users In contrast a conventional system is often designed to meet a specific need and therefore generally provides access to only a small number of users Because of the larger number of users accessing the data when a database is used the enterprise may involve additional risks as compared to a conventional data processing system in the following areas

1 Confidentiality privacy and security 2 Data quality 3 Data integrity 4 Enterprise vulnerability may be higher 5 The cost of using DBMS

Confidentiality Privacy and Security

When information is centralised and is made available to users from remote locations the possibilities of abuse are often more than in a conventional data processing system To

reduce the chances of unauthorised users accessing sensitive information it is necessary to take technical administrative and possibly legal measures

Most databases store valuable information that must be protected against deliberate trespass and destruction

Data Quality

Since the database is accessible to users remotely adequate controls are needed to control users updating data and to control data quality With increased number of users accessing data directly there are enormous opportunities for users to damage the data Unless there are suitable controls the data quality may be compromised

Data Integrity

Since a large number of users could be using a database concurrently technical safeguards are necessary to ensure that the data remain correct during operation The main threat to data integrity comes from several different users attempting to update the same data at the same time The database therefore needs to be protected against inadvertent changes by the users

Enterprise Vulnerability

Centralising all data of an enterprise in one database may mean that the database becomes an indispensible resource The survival of the enterprise may depend on reliable information being available from its database The enterprise therefore becomes vulnerable to the destruction of the database or to unauthorised modification of the database

The Cost of using a DBMS

Conventional data processing systems are typically designed to run a number of well-defined preplanned processes Such systems are often tuned to run efficiently for the processes that they were designed for Although the conventional systems are usually fairly inflexible in that new applications may be difficult to implement andor expensive to run they are usually very efficient for the applications they are designed for

The database approach on the other hand provides a flexible alternative where new applications can be developed relatively inexpensively The flexible approach is not without its costs and one of these costs is the additional cost of running applications that the conventional system was designed for Using standardised software is almost always less machine efficient than specialised software

Database - Advantages amp Disadvantages

Advantages

Reduced data redundancy Reduced updating errors and increased consistency Greater data integrity and independence from applications

programs Improved data access to users through use of host and query

languages Improved data security Reduced data entry storage and retrieval costs Facilitated development of new applications program

Disadvantages

Database systems are complex difficult and time-consuming to design

Substantial hardware and software start-up costs Damage to database affects virtually all applications programs Extensive conversion costs in moving form a file-based system to

a database system

Initial training required for all programmers and users

RDBMS Concepts1 What is database

A database is a logically coherent collection of data with some inherent meaning

representing some aspect of real world and which is designed built and populated

with data for a specific purpose

2 What is DBMSIt is a collection of programs that enables user to create and maintain a database

In other words it is general-purpose software that provides the users with the processes of defining constructing and manipulating the database for various applications

3 What is a Database systemThe database and DBMS software together is called as Database system

4 Advantages of DBMS

Redundancy is controlled Unauthorised access is restricted Providing multiple user interfaces Enforcing integrity constraints Providing backup and recovery

5 Disadvantage in File Processing System Data redundancy amp inconsistency Difficult in accessing data Data isolation Data integrity Concurrent access is not possible Security Problems

6 Describe the three levels of data abstractionThe are three levels of abstraction

Physical level The lowest level of abstraction describes how data are stored Logical level The next higher level of abstraction describes what data are stored in

database and what relationship among those data View level The highest level of abstraction describes only part of entire database7 Define the integrity rules

There are two Integrity rules Entity Integrity States that ldquoPrimary key cannot have NULL valuerdquo Referential Integrity States that ldquoForeign Key can be either a NULL value

or should be Primary Key value of other relation

8 What is extension and intensionExtension -

It is the number of tuples present in a table at any instance This is time dependent

Intension - It is a constant value that gives the name structure of table and the

constraints laid on it

9 What is System R What are its two major subsystemsSystem R was designed and developed over a period of 1974-79 at IBM San Jose

Research Center It is a prototype and its purpose was to demonstrate that it is possible to build a Relational System that can be used in a real life environment to solve real life problems with performance at least comparable to that of existing system

Its two subsystems are Research Storage System Relational Data System

10 How is the data structure of System R different from the relational structure Unlike Relational systems in System R

Domains are not supported

Enforcement of candidate key uniqueness is optional Enforcement of entity integrity is optional Referential integrity is not enforced

11 What is Data IndependenceData independence means that ldquothe application is independent of the storage

structure and access strategy of datardquo In other words The ability to modify the schema definition in one level should not affect the schema definition in the next higher level

Two types of Data Independence Physical Data Independence Modification in physical level should not

affect the logical level Logical Data Independence Modification in logical level should affect the

view level NOTE Logical Data Independence is more difficult to achieve

12 What is a view How it is related to data independenceA view may be thought of as a virtual table that is a table that does not really

exist in its own right but is instead derived from one or more underlying base table In other words there is no stored file that direct represents the view instead a definition of view is stored in data dictionary

Growth and restructuring of base tables is not reflected in views Thus the view can insulate users from the effects of restructuring and growth in the database Hence accounts for logical data independence

13 What is Data Model A collection of conceptual tools for describing data data relationships data

semantics and constraints

14 What is E-R modelThis data model is based on real world that consists of basic objects called entities

and of relationship among these objects Entities are described in a database by a set of attributes

15 What is Object Oriented modelThis model is based on collection of objects An object contains values stored in

instance variables with in the object An object also contains bodies of code that operate on the object These bodies of code are called methods Objects that contain same types of values and the same methods are grouped together into classes

16 What is an EntityIt is a thing in the real world with an independent existence

17 What is an Entity typeIt is a collection (set) of entities that have same attributes

18 What is an Entity set

It is a collection of all entities of particular entity type in the database

19 What is an Extension of entity typeThe collections of entities of a particular entity type are grouped together into an

entity set

20 What is Weak Entity setAn entity set may not have sufficient attributes to form a primary key and its

primary key compromises of its partial key and primary key of its parent entity then it is said to be Weak Entity set

21 What is an attributeIt is a particular property which describes the entity

22 What is a Relation Schema and a RelationA relation Schema denoted by R(A1 A2 hellip An) is made up of the relation name

R and the list of attributes Ai that it contains A relation is defined as a set of tuples Let r be the relation which contains set tuples (t1 t2 t3 tn) Each tuple is an ordered list of n-values t=(v1v2 vn)

23 What is degree of a RelationIt is the number of attribute of its relation schema

24 What is RelationshipIt is an association among two or more entities

25 What is Relationship set The collection (or set) of similar relationships

26 What is Relationship type Relationship type defines a set of associations or a relationship set among a given

set of entity types 27 What is degree of Relationship type

It is the number of entity type participating

25 What is DDL (Data Definition Language)A data base schema is specifies by a set of definitions expressed by a special

language called DDL

26 What is VDL (View Definition Language)It specifies user views and their mappings to the conceptual schema

27 What is SDL (Storage Definition Language)This language is to specify the internal schema This language may specify the

mapping between two schemas

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 5: Assign 1

Honestanswered 2 years ago

Security is important advantage of DBMS

Next We may see data in different view

Example

All the Bank Database cant see by the Pune But some of the details about the

clients of the bank like name and addresses may see by the pune

But entire database can view by the manager of the Bank

This will done with the help of db

Data Integrity

Functional Dependency Leave a comment Report

0 0

Karthikasanswered 2 months ago

14 ADVANTAGES OF USING DBMS

1Controlling Redundancy In traditional file processing every user group maintains its own files Each group independently keeps files on their db eg students Therefore much of the data is stored twice or more Redundancy leads to several problems

duplication of effortstorage space wasted when the same data is stored repeatedly files that represent the same data may become inconsistent (since the

updates are applied independently by each users group)We can use controlled redundancy

2Restricting Unauthorized Access A DBMS should provide a security and authorization subsystem

Some db users will not be authorized to access all information in the db (eg financial data)

Some users are allowed only to retrieve dataSome users are allowed both to retrieve and to update database

3Providing Persistent Storage for Program Objects and Data StructuresData structure provided by DBMS must be compatible with the programming languagersquos data structures Eg Object oriented DBMS are compatible with programming languages such as C++ SMALLTALK and the DBMS software automatically performs conversions between programming data structure and file formats

4Permitting Inferencing and Actions Using Deduction RulesDeductive database systems provide capabilities for defining deduction rules for inferencing new information from the stored database facts

5Providing Multiple User Interfaces (eg query languages programming languages interfaces forms menu-driven interfaces etc) 6Representing Complex Relationships Among Data

7Enforcing Integrity Constraints

8Providing Backup and Recovery(must provide facilities for recovering from hardware or software failures)

=------------------------------Disadvantages of using a DBMS

A database system generally provides on-line access to the database for many users In contrast a conventional system is often designed to meet a specific need and therefore generally provides access to only a small number of users Because of the larger number of users accessing the data when a database is used the enterprise may involve additional risks as compared to a conventional data processing system in the following areas

1 Confidentiality privacy and security 2 Data quality 3 Data integrity 4 Enterprise vulnerability may be higher 5 The cost of using DBMS

Confidentiality Privacy and Security

When information is centralised and is made available to users from remote locations the possibilities of abuse are often more than in a conventional data processing system To

reduce the chances of unauthorised users accessing sensitive information it is necessary to take technical administrative and possibly legal measures

Most databases store valuable information that must be protected against deliberate trespass and destruction

Data Quality

Since the database is accessible to users remotely adequate controls are needed to control users updating data and to control data quality With increased number of users accessing data directly there are enormous opportunities for users to damage the data Unless there are suitable controls the data quality may be compromised

Data Integrity

Since a large number of users could be using a database concurrently technical safeguards are necessary to ensure that the data remain correct during operation The main threat to data integrity comes from several different users attempting to update the same data at the same time The database therefore needs to be protected against inadvertent changes by the users

Enterprise Vulnerability

Centralising all data of an enterprise in one database may mean that the database becomes an indispensible resource The survival of the enterprise may depend on reliable information being available from its database The enterprise therefore becomes vulnerable to the destruction of the database or to unauthorised modification of the database

The Cost of using a DBMS

Conventional data processing systems are typically designed to run a number of well-defined preplanned processes Such systems are often tuned to run efficiently for the processes that they were designed for Although the conventional systems are usually fairly inflexible in that new applications may be difficult to implement andor expensive to run they are usually very efficient for the applications they are designed for

The database approach on the other hand provides a flexible alternative where new applications can be developed relatively inexpensively The flexible approach is not without its costs and one of these costs is the additional cost of running applications that the conventional system was designed for Using standardised software is almost always less machine efficient than specialised software

Database - Advantages amp Disadvantages

Advantages

Reduced data redundancy Reduced updating errors and increased consistency Greater data integrity and independence from applications

programs Improved data access to users through use of host and query

languages Improved data security Reduced data entry storage and retrieval costs Facilitated development of new applications program

Disadvantages

Database systems are complex difficult and time-consuming to design

Substantial hardware and software start-up costs Damage to database affects virtually all applications programs Extensive conversion costs in moving form a file-based system to

a database system

Initial training required for all programmers and users

RDBMS Concepts1 What is database

A database is a logically coherent collection of data with some inherent meaning

representing some aspect of real world and which is designed built and populated

with data for a specific purpose

2 What is DBMSIt is a collection of programs that enables user to create and maintain a database

In other words it is general-purpose software that provides the users with the processes of defining constructing and manipulating the database for various applications

3 What is a Database systemThe database and DBMS software together is called as Database system

4 Advantages of DBMS

Redundancy is controlled Unauthorised access is restricted Providing multiple user interfaces Enforcing integrity constraints Providing backup and recovery

5 Disadvantage in File Processing System Data redundancy amp inconsistency Difficult in accessing data Data isolation Data integrity Concurrent access is not possible Security Problems

6 Describe the three levels of data abstractionThe are three levels of abstraction

Physical level The lowest level of abstraction describes how data are stored Logical level The next higher level of abstraction describes what data are stored in

database and what relationship among those data View level The highest level of abstraction describes only part of entire database7 Define the integrity rules

There are two Integrity rules Entity Integrity States that ldquoPrimary key cannot have NULL valuerdquo Referential Integrity States that ldquoForeign Key can be either a NULL value

or should be Primary Key value of other relation

8 What is extension and intensionExtension -

It is the number of tuples present in a table at any instance This is time dependent

Intension - It is a constant value that gives the name structure of table and the

constraints laid on it

9 What is System R What are its two major subsystemsSystem R was designed and developed over a period of 1974-79 at IBM San Jose

Research Center It is a prototype and its purpose was to demonstrate that it is possible to build a Relational System that can be used in a real life environment to solve real life problems with performance at least comparable to that of existing system

Its two subsystems are Research Storage System Relational Data System

10 How is the data structure of System R different from the relational structure Unlike Relational systems in System R

Domains are not supported

Enforcement of candidate key uniqueness is optional Enforcement of entity integrity is optional Referential integrity is not enforced

11 What is Data IndependenceData independence means that ldquothe application is independent of the storage

structure and access strategy of datardquo In other words The ability to modify the schema definition in one level should not affect the schema definition in the next higher level

Two types of Data Independence Physical Data Independence Modification in physical level should not

affect the logical level Logical Data Independence Modification in logical level should affect the

view level NOTE Logical Data Independence is more difficult to achieve

12 What is a view How it is related to data independenceA view may be thought of as a virtual table that is a table that does not really

exist in its own right but is instead derived from one or more underlying base table In other words there is no stored file that direct represents the view instead a definition of view is stored in data dictionary

Growth and restructuring of base tables is not reflected in views Thus the view can insulate users from the effects of restructuring and growth in the database Hence accounts for logical data independence

13 What is Data Model A collection of conceptual tools for describing data data relationships data

semantics and constraints

14 What is E-R modelThis data model is based on real world that consists of basic objects called entities

and of relationship among these objects Entities are described in a database by a set of attributes

15 What is Object Oriented modelThis model is based on collection of objects An object contains values stored in

instance variables with in the object An object also contains bodies of code that operate on the object These bodies of code are called methods Objects that contain same types of values and the same methods are grouped together into classes

16 What is an EntityIt is a thing in the real world with an independent existence

17 What is an Entity typeIt is a collection (set) of entities that have same attributes

18 What is an Entity set

It is a collection of all entities of particular entity type in the database

19 What is an Extension of entity typeThe collections of entities of a particular entity type are grouped together into an

entity set

20 What is Weak Entity setAn entity set may not have sufficient attributes to form a primary key and its

primary key compromises of its partial key and primary key of its parent entity then it is said to be Weak Entity set

21 What is an attributeIt is a particular property which describes the entity

22 What is a Relation Schema and a RelationA relation Schema denoted by R(A1 A2 hellip An) is made up of the relation name

R and the list of attributes Ai that it contains A relation is defined as a set of tuples Let r be the relation which contains set tuples (t1 t2 t3 tn) Each tuple is an ordered list of n-values t=(v1v2 vn)

23 What is degree of a RelationIt is the number of attribute of its relation schema

24 What is RelationshipIt is an association among two or more entities

25 What is Relationship set The collection (or set) of similar relationships

26 What is Relationship type Relationship type defines a set of associations or a relationship set among a given

set of entity types 27 What is degree of Relationship type

It is the number of entity type participating

25 What is DDL (Data Definition Language)A data base schema is specifies by a set of definitions expressed by a special

language called DDL

26 What is VDL (View Definition Language)It specifies user views and their mappings to the conceptual schema

27 What is SDL (Storage Definition Language)This language is to specify the internal schema This language may specify the

mapping between two schemas

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 6: Assign 1

Some db users will not be authorized to access all information in the db (eg financial data)

Some users are allowed only to retrieve dataSome users are allowed both to retrieve and to update database

3Providing Persistent Storage for Program Objects and Data StructuresData structure provided by DBMS must be compatible with the programming languagersquos data structures Eg Object oriented DBMS are compatible with programming languages such as C++ SMALLTALK and the DBMS software automatically performs conversions between programming data structure and file formats

4Permitting Inferencing and Actions Using Deduction RulesDeductive database systems provide capabilities for defining deduction rules for inferencing new information from the stored database facts

5Providing Multiple User Interfaces (eg query languages programming languages interfaces forms menu-driven interfaces etc) 6Representing Complex Relationships Among Data

7Enforcing Integrity Constraints

8Providing Backup and Recovery(must provide facilities for recovering from hardware or software failures)

=------------------------------Disadvantages of using a DBMS

A database system generally provides on-line access to the database for many users In contrast a conventional system is often designed to meet a specific need and therefore generally provides access to only a small number of users Because of the larger number of users accessing the data when a database is used the enterprise may involve additional risks as compared to a conventional data processing system in the following areas

1 Confidentiality privacy and security 2 Data quality 3 Data integrity 4 Enterprise vulnerability may be higher 5 The cost of using DBMS

Confidentiality Privacy and Security

When information is centralised and is made available to users from remote locations the possibilities of abuse are often more than in a conventional data processing system To

reduce the chances of unauthorised users accessing sensitive information it is necessary to take technical administrative and possibly legal measures

Most databases store valuable information that must be protected against deliberate trespass and destruction

Data Quality

Since the database is accessible to users remotely adequate controls are needed to control users updating data and to control data quality With increased number of users accessing data directly there are enormous opportunities for users to damage the data Unless there are suitable controls the data quality may be compromised

Data Integrity

Since a large number of users could be using a database concurrently technical safeguards are necessary to ensure that the data remain correct during operation The main threat to data integrity comes from several different users attempting to update the same data at the same time The database therefore needs to be protected against inadvertent changes by the users

Enterprise Vulnerability

Centralising all data of an enterprise in one database may mean that the database becomes an indispensible resource The survival of the enterprise may depend on reliable information being available from its database The enterprise therefore becomes vulnerable to the destruction of the database or to unauthorised modification of the database

The Cost of using a DBMS

Conventional data processing systems are typically designed to run a number of well-defined preplanned processes Such systems are often tuned to run efficiently for the processes that they were designed for Although the conventional systems are usually fairly inflexible in that new applications may be difficult to implement andor expensive to run they are usually very efficient for the applications they are designed for

The database approach on the other hand provides a flexible alternative where new applications can be developed relatively inexpensively The flexible approach is not without its costs and one of these costs is the additional cost of running applications that the conventional system was designed for Using standardised software is almost always less machine efficient than specialised software

Database - Advantages amp Disadvantages

Advantages

Reduced data redundancy Reduced updating errors and increased consistency Greater data integrity and independence from applications

programs Improved data access to users through use of host and query

languages Improved data security Reduced data entry storage and retrieval costs Facilitated development of new applications program

Disadvantages

Database systems are complex difficult and time-consuming to design

Substantial hardware and software start-up costs Damage to database affects virtually all applications programs Extensive conversion costs in moving form a file-based system to

a database system

Initial training required for all programmers and users

RDBMS Concepts1 What is database

A database is a logically coherent collection of data with some inherent meaning

representing some aspect of real world and which is designed built and populated

with data for a specific purpose

2 What is DBMSIt is a collection of programs that enables user to create and maintain a database

In other words it is general-purpose software that provides the users with the processes of defining constructing and manipulating the database for various applications

3 What is a Database systemThe database and DBMS software together is called as Database system

4 Advantages of DBMS

Redundancy is controlled Unauthorised access is restricted Providing multiple user interfaces Enforcing integrity constraints Providing backup and recovery

5 Disadvantage in File Processing System Data redundancy amp inconsistency Difficult in accessing data Data isolation Data integrity Concurrent access is not possible Security Problems

6 Describe the three levels of data abstractionThe are three levels of abstraction

Physical level The lowest level of abstraction describes how data are stored Logical level The next higher level of abstraction describes what data are stored in

database and what relationship among those data View level The highest level of abstraction describes only part of entire database7 Define the integrity rules

There are two Integrity rules Entity Integrity States that ldquoPrimary key cannot have NULL valuerdquo Referential Integrity States that ldquoForeign Key can be either a NULL value

or should be Primary Key value of other relation

8 What is extension and intensionExtension -

It is the number of tuples present in a table at any instance This is time dependent

Intension - It is a constant value that gives the name structure of table and the

constraints laid on it

9 What is System R What are its two major subsystemsSystem R was designed and developed over a period of 1974-79 at IBM San Jose

Research Center It is a prototype and its purpose was to demonstrate that it is possible to build a Relational System that can be used in a real life environment to solve real life problems with performance at least comparable to that of existing system

Its two subsystems are Research Storage System Relational Data System

10 How is the data structure of System R different from the relational structure Unlike Relational systems in System R

Domains are not supported

Enforcement of candidate key uniqueness is optional Enforcement of entity integrity is optional Referential integrity is not enforced

11 What is Data IndependenceData independence means that ldquothe application is independent of the storage

structure and access strategy of datardquo In other words The ability to modify the schema definition in one level should not affect the schema definition in the next higher level

Two types of Data Independence Physical Data Independence Modification in physical level should not

affect the logical level Logical Data Independence Modification in logical level should affect the

view level NOTE Logical Data Independence is more difficult to achieve

12 What is a view How it is related to data independenceA view may be thought of as a virtual table that is a table that does not really

exist in its own right but is instead derived from one or more underlying base table In other words there is no stored file that direct represents the view instead a definition of view is stored in data dictionary

Growth and restructuring of base tables is not reflected in views Thus the view can insulate users from the effects of restructuring and growth in the database Hence accounts for logical data independence

13 What is Data Model A collection of conceptual tools for describing data data relationships data

semantics and constraints

14 What is E-R modelThis data model is based on real world that consists of basic objects called entities

and of relationship among these objects Entities are described in a database by a set of attributes

15 What is Object Oriented modelThis model is based on collection of objects An object contains values stored in

instance variables with in the object An object also contains bodies of code that operate on the object These bodies of code are called methods Objects that contain same types of values and the same methods are grouped together into classes

16 What is an EntityIt is a thing in the real world with an independent existence

17 What is an Entity typeIt is a collection (set) of entities that have same attributes

18 What is an Entity set

It is a collection of all entities of particular entity type in the database

19 What is an Extension of entity typeThe collections of entities of a particular entity type are grouped together into an

entity set

20 What is Weak Entity setAn entity set may not have sufficient attributes to form a primary key and its

primary key compromises of its partial key and primary key of its parent entity then it is said to be Weak Entity set

21 What is an attributeIt is a particular property which describes the entity

22 What is a Relation Schema and a RelationA relation Schema denoted by R(A1 A2 hellip An) is made up of the relation name

R and the list of attributes Ai that it contains A relation is defined as a set of tuples Let r be the relation which contains set tuples (t1 t2 t3 tn) Each tuple is an ordered list of n-values t=(v1v2 vn)

23 What is degree of a RelationIt is the number of attribute of its relation schema

24 What is RelationshipIt is an association among two or more entities

25 What is Relationship set The collection (or set) of similar relationships

26 What is Relationship type Relationship type defines a set of associations or a relationship set among a given

set of entity types 27 What is degree of Relationship type

It is the number of entity type participating

25 What is DDL (Data Definition Language)A data base schema is specifies by a set of definitions expressed by a special

language called DDL

26 What is VDL (View Definition Language)It specifies user views and their mappings to the conceptual schema

27 What is SDL (Storage Definition Language)This language is to specify the internal schema This language may specify the

mapping between two schemas

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 7: Assign 1

reduce the chances of unauthorised users accessing sensitive information it is necessary to take technical administrative and possibly legal measures

Most databases store valuable information that must be protected against deliberate trespass and destruction

Data Quality

Since the database is accessible to users remotely adequate controls are needed to control users updating data and to control data quality With increased number of users accessing data directly there are enormous opportunities for users to damage the data Unless there are suitable controls the data quality may be compromised

Data Integrity

Since a large number of users could be using a database concurrently technical safeguards are necessary to ensure that the data remain correct during operation The main threat to data integrity comes from several different users attempting to update the same data at the same time The database therefore needs to be protected against inadvertent changes by the users

Enterprise Vulnerability

Centralising all data of an enterprise in one database may mean that the database becomes an indispensible resource The survival of the enterprise may depend on reliable information being available from its database The enterprise therefore becomes vulnerable to the destruction of the database or to unauthorised modification of the database

The Cost of using a DBMS

Conventional data processing systems are typically designed to run a number of well-defined preplanned processes Such systems are often tuned to run efficiently for the processes that they were designed for Although the conventional systems are usually fairly inflexible in that new applications may be difficult to implement andor expensive to run they are usually very efficient for the applications they are designed for

The database approach on the other hand provides a flexible alternative where new applications can be developed relatively inexpensively The flexible approach is not without its costs and one of these costs is the additional cost of running applications that the conventional system was designed for Using standardised software is almost always less machine efficient than specialised software

Database - Advantages amp Disadvantages

Advantages

Reduced data redundancy Reduced updating errors and increased consistency Greater data integrity and independence from applications

programs Improved data access to users through use of host and query

languages Improved data security Reduced data entry storage and retrieval costs Facilitated development of new applications program

Disadvantages

Database systems are complex difficult and time-consuming to design

Substantial hardware and software start-up costs Damage to database affects virtually all applications programs Extensive conversion costs in moving form a file-based system to

a database system

Initial training required for all programmers and users

RDBMS Concepts1 What is database

A database is a logically coherent collection of data with some inherent meaning

representing some aspect of real world and which is designed built and populated

with data for a specific purpose

2 What is DBMSIt is a collection of programs that enables user to create and maintain a database

In other words it is general-purpose software that provides the users with the processes of defining constructing and manipulating the database for various applications

3 What is a Database systemThe database and DBMS software together is called as Database system

4 Advantages of DBMS

Redundancy is controlled Unauthorised access is restricted Providing multiple user interfaces Enforcing integrity constraints Providing backup and recovery

5 Disadvantage in File Processing System Data redundancy amp inconsistency Difficult in accessing data Data isolation Data integrity Concurrent access is not possible Security Problems

6 Describe the three levels of data abstractionThe are three levels of abstraction

Physical level The lowest level of abstraction describes how data are stored Logical level The next higher level of abstraction describes what data are stored in

database and what relationship among those data View level The highest level of abstraction describes only part of entire database7 Define the integrity rules

There are two Integrity rules Entity Integrity States that ldquoPrimary key cannot have NULL valuerdquo Referential Integrity States that ldquoForeign Key can be either a NULL value

or should be Primary Key value of other relation

8 What is extension and intensionExtension -

It is the number of tuples present in a table at any instance This is time dependent

Intension - It is a constant value that gives the name structure of table and the

constraints laid on it

9 What is System R What are its two major subsystemsSystem R was designed and developed over a period of 1974-79 at IBM San Jose

Research Center It is a prototype and its purpose was to demonstrate that it is possible to build a Relational System that can be used in a real life environment to solve real life problems with performance at least comparable to that of existing system

Its two subsystems are Research Storage System Relational Data System

10 How is the data structure of System R different from the relational structure Unlike Relational systems in System R

Domains are not supported

Enforcement of candidate key uniqueness is optional Enforcement of entity integrity is optional Referential integrity is not enforced

11 What is Data IndependenceData independence means that ldquothe application is independent of the storage

structure and access strategy of datardquo In other words The ability to modify the schema definition in one level should not affect the schema definition in the next higher level

Two types of Data Independence Physical Data Independence Modification in physical level should not

affect the logical level Logical Data Independence Modification in logical level should affect the

view level NOTE Logical Data Independence is more difficult to achieve

12 What is a view How it is related to data independenceA view may be thought of as a virtual table that is a table that does not really

exist in its own right but is instead derived from one or more underlying base table In other words there is no stored file that direct represents the view instead a definition of view is stored in data dictionary

Growth and restructuring of base tables is not reflected in views Thus the view can insulate users from the effects of restructuring and growth in the database Hence accounts for logical data independence

13 What is Data Model A collection of conceptual tools for describing data data relationships data

semantics and constraints

14 What is E-R modelThis data model is based on real world that consists of basic objects called entities

and of relationship among these objects Entities are described in a database by a set of attributes

15 What is Object Oriented modelThis model is based on collection of objects An object contains values stored in

instance variables with in the object An object also contains bodies of code that operate on the object These bodies of code are called methods Objects that contain same types of values and the same methods are grouped together into classes

16 What is an EntityIt is a thing in the real world with an independent existence

17 What is an Entity typeIt is a collection (set) of entities that have same attributes

18 What is an Entity set

It is a collection of all entities of particular entity type in the database

19 What is an Extension of entity typeThe collections of entities of a particular entity type are grouped together into an

entity set

20 What is Weak Entity setAn entity set may not have sufficient attributes to form a primary key and its

primary key compromises of its partial key and primary key of its parent entity then it is said to be Weak Entity set

21 What is an attributeIt is a particular property which describes the entity

22 What is a Relation Schema and a RelationA relation Schema denoted by R(A1 A2 hellip An) is made up of the relation name

R and the list of attributes Ai that it contains A relation is defined as a set of tuples Let r be the relation which contains set tuples (t1 t2 t3 tn) Each tuple is an ordered list of n-values t=(v1v2 vn)

23 What is degree of a RelationIt is the number of attribute of its relation schema

24 What is RelationshipIt is an association among two or more entities

25 What is Relationship set The collection (or set) of similar relationships

26 What is Relationship type Relationship type defines a set of associations or a relationship set among a given

set of entity types 27 What is degree of Relationship type

It is the number of entity type participating

25 What is DDL (Data Definition Language)A data base schema is specifies by a set of definitions expressed by a special

language called DDL

26 What is VDL (View Definition Language)It specifies user views and their mappings to the conceptual schema

27 What is SDL (Storage Definition Language)This language is to specify the internal schema This language may specify the

mapping between two schemas

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 8: Assign 1

Advantages

Reduced data redundancy Reduced updating errors and increased consistency Greater data integrity and independence from applications

programs Improved data access to users through use of host and query

languages Improved data security Reduced data entry storage and retrieval costs Facilitated development of new applications program

Disadvantages

Database systems are complex difficult and time-consuming to design

Substantial hardware and software start-up costs Damage to database affects virtually all applications programs Extensive conversion costs in moving form a file-based system to

a database system

Initial training required for all programmers and users

RDBMS Concepts1 What is database

A database is a logically coherent collection of data with some inherent meaning

representing some aspect of real world and which is designed built and populated

with data for a specific purpose

2 What is DBMSIt is a collection of programs that enables user to create and maintain a database

In other words it is general-purpose software that provides the users with the processes of defining constructing and manipulating the database for various applications

3 What is a Database systemThe database and DBMS software together is called as Database system

4 Advantages of DBMS

Redundancy is controlled Unauthorised access is restricted Providing multiple user interfaces Enforcing integrity constraints Providing backup and recovery

5 Disadvantage in File Processing System Data redundancy amp inconsistency Difficult in accessing data Data isolation Data integrity Concurrent access is not possible Security Problems

6 Describe the three levels of data abstractionThe are three levels of abstraction

Physical level The lowest level of abstraction describes how data are stored Logical level The next higher level of abstraction describes what data are stored in

database and what relationship among those data View level The highest level of abstraction describes only part of entire database7 Define the integrity rules

There are two Integrity rules Entity Integrity States that ldquoPrimary key cannot have NULL valuerdquo Referential Integrity States that ldquoForeign Key can be either a NULL value

or should be Primary Key value of other relation

8 What is extension and intensionExtension -

It is the number of tuples present in a table at any instance This is time dependent

Intension - It is a constant value that gives the name structure of table and the

constraints laid on it

9 What is System R What are its two major subsystemsSystem R was designed and developed over a period of 1974-79 at IBM San Jose

Research Center It is a prototype and its purpose was to demonstrate that it is possible to build a Relational System that can be used in a real life environment to solve real life problems with performance at least comparable to that of existing system

Its two subsystems are Research Storage System Relational Data System

10 How is the data structure of System R different from the relational structure Unlike Relational systems in System R

Domains are not supported

Enforcement of candidate key uniqueness is optional Enforcement of entity integrity is optional Referential integrity is not enforced

11 What is Data IndependenceData independence means that ldquothe application is independent of the storage

structure and access strategy of datardquo In other words The ability to modify the schema definition in one level should not affect the schema definition in the next higher level

Two types of Data Independence Physical Data Independence Modification in physical level should not

affect the logical level Logical Data Independence Modification in logical level should affect the

view level NOTE Logical Data Independence is more difficult to achieve

12 What is a view How it is related to data independenceA view may be thought of as a virtual table that is a table that does not really

exist in its own right but is instead derived from one or more underlying base table In other words there is no stored file that direct represents the view instead a definition of view is stored in data dictionary

Growth and restructuring of base tables is not reflected in views Thus the view can insulate users from the effects of restructuring and growth in the database Hence accounts for logical data independence

13 What is Data Model A collection of conceptual tools for describing data data relationships data

semantics and constraints

14 What is E-R modelThis data model is based on real world that consists of basic objects called entities

and of relationship among these objects Entities are described in a database by a set of attributes

15 What is Object Oriented modelThis model is based on collection of objects An object contains values stored in

instance variables with in the object An object also contains bodies of code that operate on the object These bodies of code are called methods Objects that contain same types of values and the same methods are grouped together into classes

16 What is an EntityIt is a thing in the real world with an independent existence

17 What is an Entity typeIt is a collection (set) of entities that have same attributes

18 What is an Entity set

It is a collection of all entities of particular entity type in the database

19 What is an Extension of entity typeThe collections of entities of a particular entity type are grouped together into an

entity set

20 What is Weak Entity setAn entity set may not have sufficient attributes to form a primary key and its

primary key compromises of its partial key and primary key of its parent entity then it is said to be Weak Entity set

21 What is an attributeIt is a particular property which describes the entity

22 What is a Relation Schema and a RelationA relation Schema denoted by R(A1 A2 hellip An) is made up of the relation name

R and the list of attributes Ai that it contains A relation is defined as a set of tuples Let r be the relation which contains set tuples (t1 t2 t3 tn) Each tuple is an ordered list of n-values t=(v1v2 vn)

23 What is degree of a RelationIt is the number of attribute of its relation schema

24 What is RelationshipIt is an association among two or more entities

25 What is Relationship set The collection (or set) of similar relationships

26 What is Relationship type Relationship type defines a set of associations or a relationship set among a given

set of entity types 27 What is degree of Relationship type

It is the number of entity type participating

25 What is DDL (Data Definition Language)A data base schema is specifies by a set of definitions expressed by a special

language called DDL

26 What is VDL (View Definition Language)It specifies user views and their mappings to the conceptual schema

27 What is SDL (Storage Definition Language)This language is to specify the internal schema This language may specify the

mapping between two schemas

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 9: Assign 1

Redundancy is controlled Unauthorised access is restricted Providing multiple user interfaces Enforcing integrity constraints Providing backup and recovery

5 Disadvantage in File Processing System Data redundancy amp inconsistency Difficult in accessing data Data isolation Data integrity Concurrent access is not possible Security Problems

6 Describe the three levels of data abstractionThe are three levels of abstraction

Physical level The lowest level of abstraction describes how data are stored Logical level The next higher level of abstraction describes what data are stored in

database and what relationship among those data View level The highest level of abstraction describes only part of entire database7 Define the integrity rules

There are two Integrity rules Entity Integrity States that ldquoPrimary key cannot have NULL valuerdquo Referential Integrity States that ldquoForeign Key can be either a NULL value

or should be Primary Key value of other relation

8 What is extension and intensionExtension -

It is the number of tuples present in a table at any instance This is time dependent

Intension - It is a constant value that gives the name structure of table and the

constraints laid on it

9 What is System R What are its two major subsystemsSystem R was designed and developed over a period of 1974-79 at IBM San Jose

Research Center It is a prototype and its purpose was to demonstrate that it is possible to build a Relational System that can be used in a real life environment to solve real life problems with performance at least comparable to that of existing system

Its two subsystems are Research Storage System Relational Data System

10 How is the data structure of System R different from the relational structure Unlike Relational systems in System R

Domains are not supported

Enforcement of candidate key uniqueness is optional Enforcement of entity integrity is optional Referential integrity is not enforced

11 What is Data IndependenceData independence means that ldquothe application is independent of the storage

structure and access strategy of datardquo In other words The ability to modify the schema definition in one level should not affect the schema definition in the next higher level

Two types of Data Independence Physical Data Independence Modification in physical level should not

affect the logical level Logical Data Independence Modification in logical level should affect the

view level NOTE Logical Data Independence is more difficult to achieve

12 What is a view How it is related to data independenceA view may be thought of as a virtual table that is a table that does not really

exist in its own right but is instead derived from one or more underlying base table In other words there is no stored file that direct represents the view instead a definition of view is stored in data dictionary

Growth and restructuring of base tables is not reflected in views Thus the view can insulate users from the effects of restructuring and growth in the database Hence accounts for logical data independence

13 What is Data Model A collection of conceptual tools for describing data data relationships data

semantics and constraints

14 What is E-R modelThis data model is based on real world that consists of basic objects called entities

and of relationship among these objects Entities are described in a database by a set of attributes

15 What is Object Oriented modelThis model is based on collection of objects An object contains values stored in

instance variables with in the object An object also contains bodies of code that operate on the object These bodies of code are called methods Objects that contain same types of values and the same methods are grouped together into classes

16 What is an EntityIt is a thing in the real world with an independent existence

17 What is an Entity typeIt is a collection (set) of entities that have same attributes

18 What is an Entity set

It is a collection of all entities of particular entity type in the database

19 What is an Extension of entity typeThe collections of entities of a particular entity type are grouped together into an

entity set

20 What is Weak Entity setAn entity set may not have sufficient attributes to form a primary key and its

primary key compromises of its partial key and primary key of its parent entity then it is said to be Weak Entity set

21 What is an attributeIt is a particular property which describes the entity

22 What is a Relation Schema and a RelationA relation Schema denoted by R(A1 A2 hellip An) is made up of the relation name

R and the list of attributes Ai that it contains A relation is defined as a set of tuples Let r be the relation which contains set tuples (t1 t2 t3 tn) Each tuple is an ordered list of n-values t=(v1v2 vn)

23 What is degree of a RelationIt is the number of attribute of its relation schema

24 What is RelationshipIt is an association among two or more entities

25 What is Relationship set The collection (or set) of similar relationships

26 What is Relationship type Relationship type defines a set of associations or a relationship set among a given

set of entity types 27 What is degree of Relationship type

It is the number of entity type participating

25 What is DDL (Data Definition Language)A data base schema is specifies by a set of definitions expressed by a special

language called DDL

26 What is VDL (View Definition Language)It specifies user views and their mappings to the conceptual schema

27 What is SDL (Storage Definition Language)This language is to specify the internal schema This language may specify the

mapping between two schemas

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 10: Assign 1

Enforcement of candidate key uniqueness is optional Enforcement of entity integrity is optional Referential integrity is not enforced

11 What is Data IndependenceData independence means that ldquothe application is independent of the storage

structure and access strategy of datardquo In other words The ability to modify the schema definition in one level should not affect the schema definition in the next higher level

Two types of Data Independence Physical Data Independence Modification in physical level should not

affect the logical level Logical Data Independence Modification in logical level should affect the

view level NOTE Logical Data Independence is more difficult to achieve

12 What is a view How it is related to data independenceA view may be thought of as a virtual table that is a table that does not really

exist in its own right but is instead derived from one or more underlying base table In other words there is no stored file that direct represents the view instead a definition of view is stored in data dictionary

Growth and restructuring of base tables is not reflected in views Thus the view can insulate users from the effects of restructuring and growth in the database Hence accounts for logical data independence

13 What is Data Model A collection of conceptual tools for describing data data relationships data

semantics and constraints

14 What is E-R modelThis data model is based on real world that consists of basic objects called entities

and of relationship among these objects Entities are described in a database by a set of attributes

15 What is Object Oriented modelThis model is based on collection of objects An object contains values stored in

instance variables with in the object An object also contains bodies of code that operate on the object These bodies of code are called methods Objects that contain same types of values and the same methods are grouped together into classes

16 What is an EntityIt is a thing in the real world with an independent existence

17 What is an Entity typeIt is a collection (set) of entities that have same attributes

18 What is an Entity set

It is a collection of all entities of particular entity type in the database

19 What is an Extension of entity typeThe collections of entities of a particular entity type are grouped together into an

entity set

20 What is Weak Entity setAn entity set may not have sufficient attributes to form a primary key and its

primary key compromises of its partial key and primary key of its parent entity then it is said to be Weak Entity set

21 What is an attributeIt is a particular property which describes the entity

22 What is a Relation Schema and a RelationA relation Schema denoted by R(A1 A2 hellip An) is made up of the relation name

R and the list of attributes Ai that it contains A relation is defined as a set of tuples Let r be the relation which contains set tuples (t1 t2 t3 tn) Each tuple is an ordered list of n-values t=(v1v2 vn)

23 What is degree of a RelationIt is the number of attribute of its relation schema

24 What is RelationshipIt is an association among two or more entities

25 What is Relationship set The collection (or set) of similar relationships

26 What is Relationship type Relationship type defines a set of associations or a relationship set among a given

set of entity types 27 What is degree of Relationship type

It is the number of entity type participating

25 What is DDL (Data Definition Language)A data base schema is specifies by a set of definitions expressed by a special

language called DDL

26 What is VDL (View Definition Language)It specifies user views and their mappings to the conceptual schema

27 What is SDL (Storage Definition Language)This language is to specify the internal schema This language may specify the

mapping between two schemas

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 11: Assign 1

It is a collection of all entities of particular entity type in the database

19 What is an Extension of entity typeThe collections of entities of a particular entity type are grouped together into an

entity set

20 What is Weak Entity setAn entity set may not have sufficient attributes to form a primary key and its

primary key compromises of its partial key and primary key of its parent entity then it is said to be Weak Entity set

21 What is an attributeIt is a particular property which describes the entity

22 What is a Relation Schema and a RelationA relation Schema denoted by R(A1 A2 hellip An) is made up of the relation name

R and the list of attributes Ai that it contains A relation is defined as a set of tuples Let r be the relation which contains set tuples (t1 t2 t3 tn) Each tuple is an ordered list of n-values t=(v1v2 vn)

23 What is degree of a RelationIt is the number of attribute of its relation schema

24 What is RelationshipIt is an association among two or more entities

25 What is Relationship set The collection (or set) of similar relationships

26 What is Relationship type Relationship type defines a set of associations or a relationship set among a given

set of entity types 27 What is degree of Relationship type

It is the number of entity type participating

25 What is DDL (Data Definition Language)A data base schema is specifies by a set of definitions expressed by a special

language called DDL

26 What is VDL (View Definition Language)It specifies user views and their mappings to the conceptual schema

27 What is SDL (Storage Definition Language)This language is to specify the internal schema This language may specify the

mapping between two schemas

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 12: Assign 1

28 What is Data Storage - Definition LanguageThe storage structures and access methods used by database system are specified

by a set of definition in a special type of DDL called data storage-definition language

29 What is DML (Data Manipulation Language)This language that enable user to access or manipulate data as organised by

appropriate data model Procedural DML or Low level DML requires a user to specify what data are needed

and how to get those data Non-Procedural DML or High level DML requires a user to specify what data are

needed without specifying how to get those data

31 What is DML CompilerIt translates DML statements in a query language into low-level instruction that

the query evaluation engine can understand

32 What is Query evaluation engineIt executes low-level instruction generated by compiler

33 What is DDL InterpreterIt interprets DDL statements and record them in tables containing metadata

34 What is Record-at-a-timeThe Low level or Procedural DML can specify and retrieve each record from a set

of records This retrieve of a record is said to be Record-at-a-time

35 What is Set-at-a-time or Set-orientedThe High level or Non-procedural DML can specify and retrieve many records in

a single DML statement This retrieve of a record is said to be Set-at-a-time or Set-oriented

36 What is Relational AlgebraIt is procedural query language It consists of a set of operations that take one or

two relations as input and produce a new relation

37 What is Relational CalculusIt is an applied predicate calculus specifically tailored for relational databases

proposed by EF Codd Eg of languages based on it are DSL ALPHA QUEL

38 How does Tuple-oriented relational calculus differ from domain-oriented relational calculus

The tuple-oriented calculus uses a tuple variables ie variable whose only permitted values are tuples of that relation Eg QUELThe domain-oriented calculus has domain variables ie variables that range over the underlying domains instead of over relation Eg ILL DEDUCE

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 13: Assign 1

39 What is normalization It is a process of analysing the given relation schemas based on their Functional

Dependencies (FDs) and primary key to achieve the properties Minimizing redundancy Minimizing insertion deletion and update anomalies

40 What is Functional Dependency A Functional dependency is denoted by X Y between two sets of attributes X

and Y that are subsets of R specifies a constraint on the possible tuple that can form a relation state r of R The constraint is for any two tuples t1 and t2 in r if t1[X] = t2[X] then they have t1[Y] = t2[Y] This means the value of X component of a tuple uniquely determines the value of component Y

41 When is a functional dependency F said to be minimal Every dependency in F has a single attribute for its right hand side We cannot replace any dependency X A in F with a dependency Y A where Y is a

proper subset of X and still have a set of dependency that is equivalent to F We cannot remove any dependency from F and still have set of dependency that is

equivalent to F

42 What is Multivalued dependencyMultivalued dependency denoted by X Y specified on relation schema R

where X and Y are both subsets of R specifies the following constraint on any relation r of R if two tuples t1 and t2 exist in r such that t1[X] = t2[X] then t3 and t4 should also exist in r with the following properties t3[x] = t4[X] = t1[X] = t2[X] t3[Y] = t1[Y] and t4[Y] = t2[Y] t3[Z] = t2[Z] and t4[Z] = t1[Z]

where [Z = (R-(X U Y)) ] 43 What is Lossless join property

It guarantees that the spurious tuple generation does not occur with respect to relation schemas after decomposition

44 What is 1 NF (Normal Form)The domain of attribute must include only atomic (simple indivisible) values

45 What is Fully Functional dependency It is based on concept of full functional dependency A functional dependency

X Y is full functional dependency if removal of any attribute A from X means that the dependency does not hold any more

46 What is 2NF A relation schema R is in 2NF if it is in 1NF and every non-prime attribute A in R

is fully functionally dependent on primary key

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 14: Assign 1

47 What is 3NFA relation schema R is in 3NF if it is in 2NF and for every FD X A either of the

following is true X is a Super-key of R A is a prime attribute of R

In other words if every non prime attribute is non-transitively dependent on primary key

48 What is BCNF (Boyce-Codd Normal Form)A relation schema R is in BCNF if it is in 3NF and satisfies an additional

constraint that for every FD X A X must be a candidate key 49 What is 4NF

A relation schema R is said to be in 4NF if for every Multivalued dependency X Y that holds over R one of following is true X is subset or equal to (or) XY = R X is a super key

50 What is 5NFA Relation schema R is said to be 5NF if for every join dependency R1 R2

Rn that holds R one the following is true Ri = R for some i The join dependency is implied by the set of FD over R in which the left side is key

of R 51 What is Domain-Key Normal Form

A relation is said to be in DKNF if all constraints and dependencies that should hold on the the constraint can be enforced by simply enforcing the domain constraint and key constraint on the relation

52 What are partial alternate artificial compound and natural key

Partial KeyIt is a set of attributes that can uniquely identify weak entities and that are

related to same owner entity It is sometime called as DiscriminatorAlternate Key

All Candidate Keys excluding the Primary Key are known as Alternate Keys

Artificial Key If no obvious key either stand alone or compound is available then the

last resort is to simply create a key by assigning a unique number to each record or occurrence Then this is known as developing an artificial key

Compound KeyIf no single data element uniquely identifies occurrences within a

construct then combining multiple elements to create a unique identifier for the construct is known as creating a compound key

Natural Key

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 15: Assign 1

When one of the data elements stored within a construct is utilized as the primary key then it is called the natural key

53 What is indexing and what are the different kinds of indexingIndexing is a technique for determining how quickly specific data can be foundTypes

Binary search style indexing B-Tree indexing Inverted list indexing Memory resident table Table indexing

54 What is system catalog or catalog relation How is better known asA RDBMS maintains a description of all the data that it contains information

about every relation and index that it contains This information is stored in a collection of relations maintained by the system called metadata It is also called data dictionary

55 What is meant by query optimizationThe phase that identifies an efficient execution plan for evaluating a query that

has the least estimated cost is referred to as query optimization

56 What is join dependency and inclusion dependencyJoin Dependency

A Join dependency is generalization of Multivalued dependencyA JD R1 R2 Rn is said to hold over a relation R if R1 R2 R3 Rn is a lossless-join decomposition of R There is no set of sound and complete inference rules for JD

Inclusion DependencyAn Inclusion Dependency is a statement of the form that some columns of

a relation are contained in other columns A foreign key constraint is an example of inclusion dependency

57 What is durability in DBMSOnce the DBMS informs the user that a transaction has successfully completed

its effects should persist even if the system crashes before all its changes are reflected on disk This property is called durability

58 What do you mean by atomicity and aggregationAtomicity

Either all actions are carried out or none are Users should not have to worry about the effect of incomplete transactions DBMS ensures this by undoing the actions of incomplete transactions

AggregationA concept which is used to model a relationship between a collection of

entities and relationships It is used when we need to express a relationship among relationships

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 16: Assign 1

59 What is a Phantom DeadlockIn distributed deadlock detection the delay in propagating local information

might cause the deadlock detection algorithms to identify deadlocks that do not really exist Such situations are called phantom deadlocks and they lead to unnecessary aborts

60 What is a checkpoint and When does it occurA Checkpoint is like a snapshot of the DBMS state By taking checkpoints the

DBMS can reduce the amount of work to be done during restart in the event of subsequent crashes

61 What are the different phases of transactionDifferent phases are

Analysis phase Redo Phase Undo phase

62 What do you mean by flat file databaseIt is a database in which there are no programs or user access languages It has no

cross-file capabilities but is user-friendly and provides user-interface management

63 What is transparent DBMSIt is one which keeps its Physical Structure hidden from user

64 Brief theory of Network Hierarchical schemas and their propertiesNetwork schema uses a graph data structure to organize records example for such

a database management system is CTCG while a hierarchical schema uses a tree data structure example for such a system is IMS

65 What is a queryA query with respect to DBMS relates to user commands that are used to interact

with a data base The query language can be classified into data definition language and data manipulation language

66 What do you mean by Correlated subquerySubqueries or nested queries are used to bring back a set of rows to be used by

the parent query Depending on how the subquery is written it can be executed once for the parent query or it can be executed once for each row returned by the parent query If the subquery is executed for each row of the parent this is called a correlated subquery

A correlated subquery can be easily identified if it contains any references to the parent subquery columns in its WHERE clause Columns from the subquery cannot be referenced anywhere else in the parent query The following example demonstrates a non-correlated subquery

Eg Select From CUST Where 10031990 IN (Select ODATE From ORDER Where CUSTCNUM = ORDERCNUM)

67 What are the primitive operations common to all record management systems

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 17: Assign 1

Addition deletion and modification

68 Name the buffer in which all the commands that are typed in are storedlsquoEditrsquo Buffer

69 What are the unary operations in Relational AlgebraPROJECTION and SELECTION

70 Are the resulting relations of PRODUCT and JOIN operation the sameNoPRODUCT Concatenation of every row in one relation with every row in

anotherJOIN Concatenation of rows from one relation and related rows from another

71 What is RDBMS KERNELTwo important pieces of RDBMS architecture are the kernel which is the

software and the data dictionary which consists of the system-level data structures used by the kernel to manage the database

You might think of an RDBMS as an operating system (or set of subsystems) designed specifically for controlling data access its primary functions are storing retrieving and securing data An RDBMS maintains its own list of authorized users and their associated privileges manages memory caches and paging controls locking for concurrent resource usage dispatches and schedules user requests and manages space usage within its table-space structures72 Name the sub-systems of a RDBMS

IO Security Language Processing Process Control Storage Management Logging and Recovery Distribution Control Transaction Control Memory Management Lock Management

73 Which part of the RDBMS takes care of the data dictionary HowData dictionary is a set of tables and database objects that is stored in a special

area of the database and maintained exclusively by the kernel

74 What is the job of the information stored in data-dictionaryThe information in the data dictionary validates the existence of the objects

provides access to them and maps the actual physical storage location

75 Not only RDBMS takes care of locating data it also determines an optimal access path to store or retrieve the data

76 How do you communicate with an RDBMSYou communicate with an RDBMS using Structured Query Language (SQL)

77 Define SQL and state the differences between SQL and other conventional programming Languages

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 18: Assign 1

SQL is a nonprocedural language that is designed specifically for data access operations on normalized relational database structures The primary difference between SQL and other conventional programming languages is that SQL statements specify what data operations should be performed rather than how to perform them

78 Name the three major set of files on disk that compose a database in OracleThere are three major sets of files on disk that compose a database All the files are binary These are

Database files Control files Redo logs

The most important of these are the database files where the actual data resides The control files and the redo logs support the functioning of the architecture itself

All three sets of files must be present open and available to Oracle for any data on the database to be useable Without these files you cannot access the database and the database administrator might have to recover some or all of the database using a backup if there is one

79 What is an Oracle InstanceThe Oracle system processes also known as Oracle background processes

provide functions for the user processesmdashfunctions that would otherwise be done by the user processes themselves

Oracle database-wide system memory is known as the SGA the system global area or shared global area The data and control structures in the SGA are shareable and all the Oracle background processes and user processes can use them

The combination of the SGA and the Oracle background processes is known as an Oracle instance

80 What are the four Oracle system processes that must always be up and running for the database to be useable

The four Oracle system processes that must always be up and running for the database to be useable include DBWR (Database Writer) LGWR (Log Writer) SMON (System Monitor) and PMON (Process Monitor)

81 What are database files control files and log files How many of these files should a database have at least WhyDatabase Files

The database files hold the actual data and are typically the largest in size Depending on their sizes the tables (and other objects) for all the user accounts can go in one database filemdashbut thats not an ideal situation because it does not make the database structure very flexible for controlling access to storage for different users putting the database on different disk drives or backing up and restoring just part of the database

You must have at least one database file but usually more than one files are used In terms of accessing and using the data in the tables and other objects the number (or location) of the files is immaterial

The database files are fixed in size and never grow bigger than the size at which they were created

Control Files

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 19: Assign 1

The control files and redo logs support the rest of the architecture Any

database must have at least one control file although you typically have more than

one to guard against loss The control file records the name of the database the date

and time it was created the location of the database and redo logs and the

synchronization information to ensure that all three sets of files are always in step

Every time you add a new database or redo log file to the database the information is

recorded in the control files

Redo Logs Any database must have at least two redo logs These are the journals for

the database the redo logs record all changes to the user objects or system objects If any type of failure occurs the changes recorded in the redo logs can be used to bring the database to a consistent state without losing any committed transactions In the case of non-data loss failure Oracle can apply the information in the redo logs automatically without intervention from the DBA

The redo log files are fixed in size and never grow dynamically from the size at which they were created

82 What is ROWIDThe ROWID is a unique database-wide physical address for every row on every

table Once assigned (when the row is first inserted into the database) it never changes until the row is deleted or the table is dropped

The ROWID consists of the following three components the combination of which uniquely identifies the physical storage location of the row

Oracle database file number which contains the block with the rows Oracle block address which contains the row The row within the block (because each block can hold many rows) The ROWID is used internally in indexes as a quick means of retrieving rows

with a particular key value Application developers also use it in SQL statements as a quick way to access a row once they know the ROWID

83 What is Oracle Block Can two Oracle Blocks have the same addressOracle formats the database files into a number of Oracle blocks when they are

first createdmdashmaking it easier for the RDBMS software to manage the files and easier to read data into the memory areas

The block size should be a multiple of the operating system block size Regardless of the block size the entire block is not available for holding data Oracle takes up some space to manage the contents of the block This block header has a minimum size but it can grow

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 20: Assign 1

These Oracle blocks are the smallest unit of storage Increasing the Oracle block size can improve performance but it should be done only when the database is first created

Each Oracle block is numbered sequentially for each database file starting at 1 Two blocks can have the same block address if they are in different database files

84 What is database TriggerA database trigger is a PLSQL block that can defined to automatically execute

for insert update and delete statements against a table The trigger can e defined to execute once for the entire statement or once for every row that is inserted updated or deleted For any one table there are twelve events for which you can define database triggers A database trigger can call database procedures that are also written in PLSQL

85 Name two utilities that Oracle provides which are use for backup and recoveryAlong with the RDBMS software Oracle provides two utilities that you can use

to back up and restore the database These utilities are Export and Import The Export utility dumps the definitions and data for the specified part of the

database to an operating system binary file The Import utility reads the file produced by an export recreates the definitions of objects and inserts the data

If Export and Import are used as a means of backing up and recovering the database all the changes made to the database cannot be recovered since the export was performed The best you can do is recover the database to the time when the export was last performed

86 What are stored-procedures And what are the advantages of using themStored procedures are database objects that perform a user defined operation A

stored procedure can have a set of compound SQL statements A stored procedure executes the SQL commands and returns the result to the client Stored procedures are used to reduce network traffic

87 How are exceptions handled in PLSQL Give some of the internal exceptions namePLSQL exception handling is a mechanism for dealing with run-time errors

encountered during procedure execution Use of this mechanism enables execution to continue if the error is not severe enough to cause procedure termination

The exception handler must be defined within a subprogram specification Errors cause the program to raise an exception with a transfer of control to the exception-handler block After the exception handler executes control returns to the block in which the handler was defined If there are no more executable statements in the block control returns to the caller

User-Defined Exceptions PLSQL enables the user to define exception handlers in the declarations

area of subprogram specifications User accomplishes this by naming an exception as in the following example

ot_failure EXCEPTIONIn this case the exception name is ot_failure Code associated with this handler is written in the EXCEPTION specification area as follows

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 21: Assign 1

EXCEPTION when OT_FAILURE then out_status_code = g_out_status_code out_msg = g_out_msg

The following is an example of a subprogram exception

EXCEPTION when NO_DATA_FOUND then g_out_status_code = FAIL RAISE ot_failure

Within this exception is the RAISE statement that transfers control back to the ot_failure exception handler This technique of raising the exception is used to invoke all user-defined exceptions

System-Defined Exceptions Exceptions internal to PLSQL are raised automatically upon error

NO_DATA_FOUND is a system-defined exception Table below gives a complete list of internal exceptions

PLSQL internal exceptions

Exception Name Oracle ErrorCURSOR_ALREADY_OPEN ORA-06511DUP_VAL_ON_INDEX ORA-00001INVALID_CURSOR ORA-01001INVALID_NUMBER ORA-01722LOGIN_DENIED ORA-01017NO_DATA_FOUND ORA-01403NOT_LOGGED_ON ORA-01012PROGRAM_ERROR ORA-06501STORAGE_ERROR ORA-06500TIMEOUT_ON_RESOURCE ORA-00051TOO_MANY_ROWS ORA-01422TRANSACTION_BACKED_OUT ORA-00061VALUE_ERROR ORA-06502ZERO_DIVIDE ORA-01476

In addition to this list of exceptions there is a catch-all exception named OTHERS that traps all errors for which specific error handling has not been established

88 Does PLSQL support overloading ExplainThe concept of overloading in PLSQL relates to the idea that you can define

procedures and functions with the same name PLSQL does not look only at the referenced name however to resolve a procedure or function call The count and data types of formal parameters are also considered

PLSQL also attempts to resolve any procedure or function calls in locally defined packages before looking at globally defined packages or internal functions To further ensure calling the proper procedure you can use the dot notation Prefacing a procedure or function name with the package name fully qualifies any procedure or function reference

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 22: Assign 1

89 Tables derived from the ERD a) Are totally unnormalisedb) Are always in 1NFc) Can be further denormalisedd) May have multi-valued attributes

(b) Are always in 1NF

90 Spurious tuples may occur due to i Bad normalization ii Theta joins iii Updating tables from join

a) i amp ii b) ii amp iiic) i amp iii d) ii amp iii

(a) i amp iii because theta joins are joins made on keys that are not primary keys

91 A B C is a set of attributes The functional dependency is as follows AB -gt B AC -gt C C -gt B

a) is in 1NFb) is in 2NFc) is in 3NFd) is in BCNF

(a) is in 1NF since (AC)+ = A B C hence AC is the primary key Since C B is a FD given where neither C is a Key nor B is a prime attribute this it is not in 3NF Further B is not functionally dependent on key AC thus it is not in 2NF Thus the given FDs is in 1NF

92 In mapping of ERD to DFD a) entities in ERD should correspond to an existing entitystore in DFDb) entity in DFD is converted to attributes of an entity in ERDc) relations in ERD has 1 to 1 correspondence to processes in DFDd) relationships in ERD has 1 to 1 correspondence to flows in DFD

(a) entities in ERD should correspond to an existing entitystore in DFD

93 A dominant entity is the entitya) on the N side in a 1 N relationshipb) on the 1 side in a 1 N relationshipc) on either side in a 1 1 relationshipd) nothing to do with 1 1 or 1 N relationship

(b) on the 1 side in a 1 N relationship

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 23: Assign 1

94 Select NORTH CUSTOMER From CUST_DTLS Where REGION = N Order By CUSTOMER Union Select EAST CUSTOMER From CUST_DTLS Where REGION = E Order By CUSTOMERThe above is

a) Not an errorb) Error - the string in single quotes NORTH and SOUTHc) Error - the string should be in double quotesd) Error - ORDER BY clause

(d) Error - the ORDER BY clause Since ORDER BY clause cannot be used in UNIONS

95 What is Storage Manager It is a program module that provides the interface between the low-level data

stored in database application programs and queries submitted to the system 96 What is Buffer Manager

It is a program module which is responsible for fetching data from disk storage into main memory and deciding what data to be cache in memory

97 What is Transaction ManagerIt is a program module which ensures that database remains in a consistent state

despite system failures and concurrent transaction execution proceeds without conflicting

98 What is File ManagerIt is a program module which manages the allocation of space on disk storage

and data structure used to represent information stored on a disk

99 What is Authorization and Integrity managerIt is the program module which tests for the satisfaction of integrity constraint

and checks the authority of user to access data 100 What are stand-alone procedures

Procedures that are not part of a package are known as stand-alone because they independently defined A good example of a stand-alone procedure is one written in a SQLForms application These types of procedures are not available for reference from other Oracle tools Another limitation of stand-alone procedures is that they are compiled at run time which slows execution

101 What are cursors give different types of cursorsPLSQL uses cursors for all database information accesses statements The

language supports the use two types of cursors Implicit Explicit

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 24: Assign 1

102 What is cold backup and hot backup (in case of Oracle) Cold Backup

It is copying the three sets of files (database files redo logs and control file) when the instance is shut down This is a straight file copy usually from the disk directly to tape You must shut down the instance to guarantee a consistent copy

If a cold backup is performed the only option available in the event of data file loss is restoring all the files from the latest backup All work performed on the database since the last backup is lost Hot Backup

Some sites (such as worldwide airline reservations systems) cannot shut down the database while making a backup copy of the files The cold backup is not an available option

So different means of backing up database must be used mdash the hot backup Issue a SQL command to indicate to Oracle on a tablespace-by-tablespace basis that the files of the tablespace are to backed up The users can continue to make full use of the files including making changes to the data Once the user has indicated that heshe wants to back up the tablespace files heshe can use the operating system to copy those files to the desired backup destination

The database must be running in ARCHIVELOG mode for the hot backup option

If a data loss failure does occur the lost database files can be restored using the hot backup and the online and offline redo logs created since the backup was done The database is restored to the most consistent state without any loss of committed transactions

103 What are Armstrong rules How do we say that they are complete andor soundThe well-known inference rules for FDs

Reflexive rule If Y is subset or equal to X then X Y Augmentation rule

If X Y then XZ YZ Transitive rule

If X Y Y Z then X Z Decomposition rule If X YZ then X Y Union or Additive rule If X Y X Z then X YZ Pseudo Transitive rule If X Y WY Z then WX Z

Of these the first three are known as Amstrong Rules They are sound because it is enough if a set of FDs satisfy these three They are called complete because using these three rules we can generate the rest all inference rules

104 How can you find the minimal key of relational schema

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 25: Assign 1

Minimal key is one which can identify each tuple of the given relation schema uniquely For finding the minimal key it is required to find the closure that is the set of all attributes that are dependent on any given set of attributes under the given set of functional dependency

Algo I Determining X+ closure for X given set of FDs F1 Set X+ = X2 Set Old X+ = X+

3 For each FD Y Z in F and if Y belongs to X+ then add Z to X+

4 Repeat steps 2 and 3 until Old X+ = X+

AlgoII Determining minimal K for relation schema R given set of FDs F1 Set K to R that is make K a set of all attributes in R2 For each attribute A in K

a Compute (K ndash A)+ with respect to Fb If (K ndash A)+ = R then set K = (K ndash A)+

105 What do you understand by dependency preservationGiven a relation R and a set of FDs F dependency preservation states that

the closure of the union of the projection of F on each decomposed relation Ri is equal to the closure of F ie

((R1(F)) U hellip U (Rn(F)))+ = F+

if decomposition is not dependency preserving then some dependency is lost in the decomposition 106 What is meant by Proactive Retroactive and Simultaneous Update

Proactive UpdateThe updates that are applied to database before it becomes

effective in real world Retroactive Update

The updates that are applied to database after it becomes effective in real world

Simulatneous UpdateThe updates that are applied to database at the same time when it

becomes effective in real world

107 What are the different types of JOIN operationsEqui Join This is the most common type of join which involves only

equality comparisions The disadvantage in this type of join is that there

Unit-1 Database System Concept Lecture-2 Disadvantages of File processing systems

Hi The journey has started today you will learn about the various flaws in the conventional file processing systems The actual reason for the introduction of DBMS

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 26: Assign 1

Data are stored in files and database in all information systems Files are collections of similar records Data storage is build around the corresponding application that uses the files

File Processing Systems

bull Where data are stored to individual files is a very old but often used approach to system development

bull Each program (system) often had its own unique set of files

Page No 1

Diagrammatic representation of conventional file systems

Unit-1 Database System Concept Lecture-2

Users of file processing systems are almost always at the mercy of the Information Systems department to write programs that manipulate stored data and produce needed information such as printed reports and screen displays

What is a file then

A File is a collection of data about a single entity

Files are typically designed to meet needs of a particular department or user group

Files are also typically designed to be part of a particular computer application

Advantages

1048766are relatively easy to design and implement since they are normally based on a single application or information system

1048766The processing speed is faster than other ways of storing data

Disadvantages

1048766Program-data dependence

1048766Duplication of data

1048766Limited data sharing

1048766Lengthy program and system development time

1048766Excessive program maintenance when the system changed

1048766Duplication of data items in multiple files Duplication can affect on input maintenance storage and possibly data integrity problems

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 27: Assign 1

1048766Inflexibility and non-scalability Since the conventional files are designed to support single application the original file structure cannot support the new requirements

Page No 2

Today the trend is in favor of replacing file-based systems and applications with database systems and applications

Unit-1 Database System Concept Lecture-2

Database Approach

A database is more than a file ndash it contains information about more than one entity and information about relationships among the entities

Data about a single entity (eg Product Customer Customer Order Department) are each stored to a ldquotablerdquo in the database

Databases are designed to meet the needs of multiple users and to be used in multiple applications

One significant development in the more user-friendly relational DBMS products is that users can sometimes get their own answers from the stored data by learning to use data querying methods

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 28: Assign 1

Page No 3 Unit-1 Database System Concept Lecture-2

Advantages

1048766Program-data independence

1048766Minimal data redundancy improved data consistency enforcement of standards improved data quality

1048766Improved data sharing improved data accessibility and responsiveness

1048766Increased productivity of application development

1048766Reduced program maintenance Data can be shared by many applications and systems

1048766Data are stored in flexible formats Data independence If the data are well designed the user can access different combinations of same data for query and report purposes

1048766Reduce redundancy

Database Application Size

Personal Computer Database

o Supports a single-user

o Stand-alone

o May purchase such an application from a vendor

o Canrsquot integrate data with other applications

Workgroup Database

o Example would be a small team using the same set of applications such as in a physicianrsquos office

o Includes numerous workstations and a single server typically

Department Database Page No 4

o A functional area (such as production) in a firm

Unit-1 Database System Concept Lecture-2

o Same hardwaresoftware as Workgroup database but is specialized for the department

Enterprise Database

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 29: Assign 1

o Databases or set of databases to serve an entire organization

o May be distributed over several different physical locations

o Requires organizational standards for system development and maintenance

Figure 111 Conventional files versus the database

Database design in perspective

The focus is on the data from the perspective of the system designer The output of database design is database schema Data models were developed during the definition phase Then data structures supporting database technology are produced during the database design

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 30: Assign 1

Page No 5 Unit-1 Database System Concept Lecture-2

Advantages of using a DBMS

There are three main features of a database management system that make it attractive to use a DBMS in preference to more conventional software These features are centralized data management data independence and systems integration

In a database system the data is managed by the DBMS and all access to the data is through the DBMS providing a key to effective data processing This contrasts with conventional data processing systems where each application program has direct access to the data it reads or manipulates In a conventional DP system an organization is likely to have several files of related data that are processed by several different application programs

In the conventional data processing application programs the programs usually are based on a considerable knowledge of data structure and format In such environment any change of data structure or format would require appropriate changes to the application programs These changes could be as small as the following

1 Coding of some field is changed For example a null value that was coded as -1 is now coded as -9999

2 A new field is added to the records

3 The length of one of the fields is changed For example the maximum number of digits in a telephone number field or a postcode field needs to be changed

4 The field on which the file is sorted is changed

Page No 6

If some major changes were to be made to the data the application programs may need to be rewritten In a database system the database management system provides the interface between the application programs and the data When changes are made to the data representation the metadata maintained by the DBMS is changed but the DBMS continues to provide data to application programs in the previously used way The DBMS handles the task of transformation of data wherever necessary

This independence between the programs and the data is called data independence Data independence is important because every time some change needs to be made to the data structure the programs that were being used before the change would continue to work To provide a high degree of data independence a DBMS must include a sophisticated metadata management system

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 31: Assign 1

In DBMS all files are integrated into one system thus reducing redundancies and making data management more efficient In addition DBMS provides centralized control of the operational data Some of the advantages of data independence integration and centralized control are

Redundancies and inconsistencies can be reduced

In conventional data systems an organization often builds a collection of application programs often created by different programmers and requiring different components of the operational data of the organization The data in conventional data systems is often not centralized Some applications may require data to be combined from several systems These several systems could well have data that is redundant as well as inconsistent (that is different copies of the same data may have different values) Data inconsistencies are often encountered in everyday life For example we have all come across situations when a new address is communicated to an organization that we deal with (eg a bank or Telecom or a gas company) we find that some of the communications from that organization are received at the new address while others continue to be mailed to the old address Combining all the data in a database would involve reduction in redundancy as well as inconsistency It also is likely to reduce the costs for collection storage and updating of data

Better service to the Users Page No 7

A DBMS is often used to provide better service to the users In conventional systems availability of information is often poor since it normally is difficult to obtain information that the existing systems were not designed for Once several conventional systems are

combined to form one centralized data base the availability of information and its up-to-datedness is likely to improve since the data can now be shared and the DBMS makes it easy to respond to unforeseen information requests

Centralizing the data in a database also often means that users can obtain new and combined information that would have been impossible to obtain otherwise Also use of a DBMS should allow users that do not know programming to interact with the data more easily

The ability to quickly obtain new and combined information is becoming increasingly important in an environment where various levels of governments are requiring organizations to provide more and more information about their activities An organization running a conventional data processing system would require new programs to be written (or the information compiled manually) to meet every new demand

Flexibility of the system is improved

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 32: Assign 1

Changes are often necessary to the contents of data stored in any system These changes are more easily made in a database than in a conventional system in that these changes do not need to have any impact on application programs

Cost of developing and maintaining systems is lower

As noted earlier it is much easier to respond to unforeseen requests when the data is centralized in a database than when it is stored in conventional file systems Although the initial cost of setting up of a database can be large one normally expects the overall cost of setting up a database and developing and maintaining application programs to be lower than for similar service using conventional systems since the productivity of programmers can be substantially higher in using non-procedural languages that have been developed with modern DBMS than using procedural languages

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 33: Assign 1

Page No 8 Unit-1 Database System Concept Lecture-2

Standards can be enforced

Since all access to the database must be through the DBMS standards are easier to enforce Standards may relate to the naming of the data the format of the data the structure of the data etc

Security can be improved

In conventional systems applications are developed in an ad hoc manner Often different system of an organization would access different components of the operational data In such an environment enforcing security can be quite difficult

Setting up of a database makes it easier to enforce security restrictions since the data is now centralized It is easier to control that has access to what parts of the database However setting up a database can also make it easier for a determined person to breach security We will discuss this in the next section

Integrity can be improved

Since the data of the organization using a database approach is centralized and would be used by a number of users at a time it is essential to enforce integrity controls

Integrity may be compromised in many ways For example someone may make a mistake in data input and the salary of a full-time employee may be input as $4000 rather than $40000 A student may be shown to have borrowed books but has no enrolment Salary of a staff member in one department may be coming out of the budget of another department Page No 9

If a number of users are allowed to update the same data item at the same time there is a possibility that the result of the updates is not quite what was intended For example in an airline DBMS we could have a situation where the number of bookings made is larger than the capacity of the aircraft that is to be used for the flight Controls therefore must be introduced to prevent such errors to occur because of concurrent updating activities

However since all data is stored only once it is often easier to maintain integrity than in conventional systems

Enterprise requirements can be identified

All enterprises have sections and departments and each of these units often consider the work of their unit as the most important and therefore consider their needs as the most important Once a database has been set up with _entralized control it will be necessary to identify enterprise requirements and to balance the needs of competing units It may become necessary to ignore some requests for information if they conflict with higher priority needs of the enterprise

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 34: Assign 1

Data model must be developed

Perhaps the most important advantage of setting up a database system is the requirement that an overall data model for the enterprise be built In conventional systems it is more likely that files will be designed as needs of particular applications demand The overall view is often not considered Building an overall view of the enterprise data although often an expensive exercise is usually very cost-effective in the long term

DBMS ARCHITECTURE

We now discuss a conceptual framework for a DBMS Several different frameworks have been suggested over the last several years For example a framework may be developed based on the functions that the various components of a DBMS must provide to its users It may also be based on different views of data that are possible within a DBMS We consider the latter approach Page No 10

A commonly used views of data approach is the three-level architecture suggested by ANSISPARC (American National Standards InstituteStandards Planning and Requirements Committee) ANSISPARC produced an interim report in 1972 followed by a final report in 1977 The reports proposed an architectural framework for databases

Unit-1 Database System Concept Lecture-2

Under this approach a database is considered as containing data about an enterprise The three levels of the architecture are three different views of the data

1 External ndash individual user view

2 Conceptual ndash community user view

3 Internal ndash physical or storage view

The three level database architecture allows a clear separation of the information meaning (conceptual view) from the external data representation and from the physical data structure layout A database system that is able to separate the three different views of data is likely to be flexible and adaptable This flexibility and adaptability is data independence that we have discussed earlier

We now briefly discuss the three different views

The external level is the view that the individual user of the database has This view is often a restricted view of the database and the same database may provide a number of different views for different classes of users In general the end users and even the applications programmers are only interested in a subset of the database For

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 35: Assign 1

example a department head may only be interested in the departmental finances and student enrolments but not the library information The librarian would not be expected to have any interest in the information about academic staff The payroll office would have no interest in student enrolments Page No 11

The conceptual view is the information model of the enterprise and contains the view of the whole enterprise without any concern for the physical implementation This view is normally more stable than the other two views In a database it may be desirable to change the internal view to improve performance while there has been no change in the conceptual view of the database The conceptual view is the overall community view of the database and it includes all the information that is going to be represented in the database The conceptual view is defined by the conceptual schema which includes definitions of each of the various types of data

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 36: Assign 1

Unit-1 Database System Concept Lecture-2

The internal view is the view about the actual physical storage of data It tells us what data is stored in the database and how At least the following aspects are considered at this level

1 Storage allocation eg B-trees hashing etc

2 Access paths eg specification of primary and secondary keys indexes and pointers and sequencing

3 Miscellaneous eg data compression and encryption techniques optimization of the internal structures

Efficiency considerations are the most important at this level and the data structures are chosen to provide an efficient database The internal view does not deal with the physical devices directly Instead it views a physical device as a collection of physical pages and allocates space in terms of logical pages

The separation of the conceptual view from the internal view enables us to provide a logical description of the database without the need to specify physical structures This is often called physical data independence Separating the external views from the conceptual view enables us to change the conceptual view without affecting the external views This separation is sometimes called logical data independence

Assuming the three level view of the database a number of mappings are needed to enable the users working with one of the external views For example the payroll office may have an external view of the database that consists of the following information only

1 Staff number name and address

2 Staff tax information eg number of dependents

3 Staff bank information where salary is deposited

4 Staff employment status salary level leaves information etc

Page No 12

The conceptual view of the database may contain academic staff general staff casual staff etc A mapping will need to be created where all the staff in the different categories

are combined into one category for the payroll office The conceptual view would include information about each staffrsquos position the date employment started full-time or part-time etc This will need to be mapped to the salary level for the salary office Also if there is some change in the conceptual view the external view can stay the same if the mapping is changed Page No 13

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 37: Assign 1

Summary

Now we are coming to the end of this lecture but before parting we will revise thethings Files are collections of similar records Data storage is build around thecorresponding application that uses the files Duplication of data items in multiplefiles Duplication can affect on input maintenance storage and possibly data integrityproblems Inflexibility and non-scalability Since the conventional files are designed tosupport single application the original file structure cannot support the newrequirements

Today the trend is in favor of replacing file-based systems and applications withdatabase systems and applications

Unit-1 Database System Concept Lecture-2

Questions 1 Explain a file with its advantages and disadvantages 2 Define centralized data management data independence and systems

integration 3 Explain DBMS architecture 4 Explain the 3 different views or architecture of the data

Selected Bibliography

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 38: Assign 1

------------------------------------------------------------------------------------------------------------

Data dictionary

centralized repository of information about data such as meaning relationships to other data origin usage and format

A data dictionary is a reserved space within a database which is used to store information about the database itself

A data dictionary may contain information such as

Database design information Stored SQL procedures User permissions User statistics Database process information Database growth statistics Database performance statistics

Data dictionaries do not contain any actual data from the database only bookkeeping information for managing it Without a data dictionary however a database management system cannot access data from the database

database A collection of related information stored in a structured format Database is often used interchangeably with the term table (Lotus Approach for instance uses the term database instead of table) Technically theyre different A table is a single store of related information a database can consist of one or more tables of information that are related in some way For instance you could track all the information about the students in a school in a students table If you then created separate tables containing details about teachers classes and classrooms you could combine all four tables into a timetabling database Such a multi-table database is called a relational database

data entry The process of getting information into a database usually done by people typing it in by way of data-entry forms designed to simplify the process

dbms Database management system A program which lets you manage information in databases Lotus Approach Microsoft Access and FileMaker Pro for example are all DBMSs although the term is often shortened to database So the same term is used to apply to the program you use to organise your data and the actual data structure you create with that program

One of the most important parts of an Oracle database is its data dictionary which is a read-only set of tables that provides information about the database A data dictionary contains

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts
Page 39: Assign 1

The definitions of all schema objects in the database (tables views indexes clusters synonyms sequences procedures functions packages triggers and so on)

How much space has been allocated for and is currently used by the schema objects

Default values for columns

Integrity constraint information

The names of Oracle Database users

Privileges and roles each user has been granted

Auditing information such as who has accessed or updated various schema objects

Other general database information

The data dictionary is structured in tables and views just like other database data All the data dictionary tables and views for a given database are stored in that databases SYSTEM tablespace

Not only is the data dictionary central to every Oracle database it is an important tool for all users from end users to application designers and database administrators Use SQL statements to access the data dictionary Because the data dictionary is read only you can issue only queries (SELECT statements) against its tables and views

  • =------------------------------
  • RDBMS Concepts