 Professor from Department of Electronics Engineering from Walsh and Engineer of Technology, Sallapur. So, today we are going to have a session on database system environment. After the end of this session, student will be able to understand or describe the database environment. DbMS is a complex software system where we will discuss the types of software components that consist of the DbMS and the type of computer system software with which the DbMS interacts. First is the DbMS component modules. The figure, we are going to see in the next slide. The figure is divided into two types. The top layer of the figure describes the various users of the database environment and the interfaces. Next, the lower part shows the internals of the database management system responsible for the storage of data and processing of transactions. This is a diagram of the database system environment. So, the top most layers defines you about the different types of users like the DbMS staff, the casual users, application programmers and the parasitic users. The lowest part described about the storage of the database management system software, how the data is stored in it. So, the DbMS staff is going to use the DDS statements and privileged commands. Casual users are going to use some interactive queries which are going to interact with the database. Application users are going to have some application programs and the parasitic users are going to have some canned transactions. Here the lowest part, there is a stored database. The data might be stored on the disk or some cloud you can say and you are having the database catalog. So, data dictionary or the system catalog you can see, whichever data is there, metadata it is stored in the form of catalogs. There is a runtime database processor which is going to process all the data, data commands, concurrency control and the backup recovery software are there which is going to control the concurrency and also responsible for the backup and recovery of the system failure and there is a stored data manager. So, let's see the description of one by one. Database and the DbMS catalogs are usually stored on the disk. Disk to disk is controlled primarily by the operating system. So operating system comes into picture. The stored data manager module of the DbMS controls access to the DbMS information stored in the disk. So, whenever disks come into picture, operating system will come into picture and then comes into picture the stored data manager who is going to access the information from the stored disk. Let's consider the top part. This shows the interfaces for the DBA staff, database administrator, casual users who work with the interactive interfaces to formulate some queries, application programmers who create some programs using some host programming languages and parasitic users who are going to do the some data entry by supplying the parameters to predefined transactions. So, parametric users are nothing but you can say the bank clerks you can see. So, they are going to do some data entry jobs like amount, withdrawal, deposit, etc. So, they are nothing but the canned transactions you can see. DbMS staffs are nothing but who are going to define the database catalog or the metadata, application programs who are nothing but who are going to create some programs using some host programming languages. DbMS staff works on defining the database and tuning it by making changes to its definitions using some DDL language and some privileged commands. So, DBA is nothing but data administrator who is going to use some DDL commands like data description language for describing the database catalog. The DDL compiler processes schema definitions described in the DDL and stores the description of the schema which is nothing but the metadata into the DbMS catalog. The catalog includes the information such as names, size of file, name and data types of the data items, storage items of the each file, mapping information among the schemas and the constraints. So, the database catalog consists of the file sizes, you can say the data type, storage structures or the storage features and everything. The casual users and persons with occasional need of information from the database interact with some of the interfaces which we call the interactive query languages. Casual users you can refer to the company manager who occasionally interact with the database not regularly. The query compiler that compiles them into the internal form, this internal query is subjected to the query optimization. So, whatever query the casual users are going to have it is given to the compiler and then it subjected to query optimizer. The query optimizer is concerned with the rearrangement and possible reordering of the operations, elimination of redundancy and use of correct algorithms and indexes using the execution. It concerns the system catalog for statistical and other physical information about the stored data and generates executable code that performs the necessary operations for query and makes a call on the runtime processor. So, all the optimization query optimization query compiler and whatever it is it goes to the runtime processor. Application programs writes the programs in the host programming language such as Java, CPP and then they are subjected to the pre compiler. The pre compiler extracts the DML codes. The DML is nothing but the data manipulation codes like insertion, deletion, updation or retrival. The pre compiler extracts the DML codes from application programs written in a host programming language. These commands are sent to the DML compiler for compilation into a subject code for the database access. The rest of the program is sent to the host language compiler. The object codes for the DML commands and the rest of the codes are linked forming a canned transactions whose executable code includes calls for the runtime processor. Canned transactions are executed repeatedly by the parametric users who simply supply the parameters to the transactions. So canned transactions are nothing but they are performed by the bank clerks. So, they are having the repetitive functions like a withdrawal, deposit, everything they have to make entry in the passbook or they have to withdraw the amount. Execution is considered to be a separate transaction. An example is a bank withdrawal transaction where the amount number and the amount may be applied as a parameters. In the lower part, the runtime processor executes first the privilege commands from the DBA users, the executable query plans and the canned transactions from the parametric users with the runtime parameters. It works with the system catalog and also works with the store data manager which in turns uses basic operating system serving for the carrying low level input output which is read write operations within the disk and the main memory. The concurrency control and the backup recovery systems are integrated into the working of the runtime processor for purpose of transaction management. Next is the database system utilities. In addition to the processing the software models, most the DBMS have database utilities that help the DBMA manage the database system. Common utilities have the following types of functions. First is the loading. Loading utility is used to load the existing file or the text or sequential files into the database. Source format and the target files are specified into the utility, reformat the data to load into the table. Backup. Backup utility creates a backup copy of the database. Usually by dumping the entire database into tape or some mass storage media, the backup the backup copy can be used to restore the database into the case of some catastrophic disk failure. So whenever there is a disk failure or some failure software failure or hardware failure whatever data is there in the database that should not get corrupted. So database management will provide you a backup facility with the help of utility. Next is the storage reorganization. This utility can be used to reorganize a set of database files into different file formats and create a new access path to improve the performance. Next is the performance monitoring utility monitors database usage and provides statistic to the DBA. That is DBA is nothing but database administrate. DBA uses the statistics in making decisions such as whether or not the reorganization of file or whether to add or drop the indexes to provide the performance. So these four utilities are provided by the DBMS. Next is the tools and application environment and communication facilities. Case tools. Case tools are used in design phase to help speed up the development process. Data dictionary system stores the catalog information about the schemas and constraints, usage standards, application programs, etc can be accessed directly by DBMA users when needed. Next is the application development environment like JBuilder provide environment for the developing by database applications and include facilities to help in the database design. Graphical user interface development queries and updating application development. Next comes the communication software allows user to remote locations to access the database through the computer terminals, work stations or the personal computers connected to the database through data communication hardware such as phone lines, local area, network etc. So these are the references of the database systems by Ramesh and the Shamkan B Naute. Thank you.