The functions of Database Management System(DBMS) are as follows -
Data Definition - The DBMS must be able to accept data definitions in the source form and convert them to appropriate object form . In other words , the DBMS must include DDL processor or DDL compiler components for each of the various data definition languages (DDLs) .
Data Manipulation - The DBMS must be able to handle requests to retrieve , update, or delete existing data in the database or to add new data to the database . In other words , the DBMS must include a DML processor or DML compiler component to deal with the data manipulation language (DML) .
Optimization and Execution - DML requests , planned or unplanned , must be processed by the optimizer component whose purpose is to determine an efficient way of implementing the requests . The optimized requests are then executed under the control of the run-time manager .
Data Security and Integrity - The DBMS must monitor user requests and rejects any attempts to violate the security constraints defined by the DBA (Database Administrator) .These tasks can be carried out at compile time or run-time or some mixture of the two .
Data Recovery and Concurrency - The DBMS ,some other related software component , called the transaction manager or transaction processing monitor must enforce certain recovery and concurrency controls .
Data Dictionary - The DBMS must provide a data dictionary function . The data dictionary is a database which contains "data about data" (called meta data or descriptor) . In particular , all of the various schema's and mappings and all of the various security and integrity constraints will be stored in both source and object form , in the dictionary .
Performance - The DBMS should perform all of the tasks identified above as efficiently as possible .
For more of such hot topics read my other posts here :