DBMS questions for Computer Science and MCA students
Define characteristics of DBMS. Explain Database Users.
A good database should be able to store all kinds of real world data. A good database management should stores data in such a way that it becomes easier to retrieve, manipulate, and strong storage capacity.
Characteristics of DBMS- Real-world entity : Todays modern DBMS is considered as real-world entities. DBMS are more realistic to design the architecture of database. For example, An Employee database may use employees as an entity and their name, age as an attribute.
- Relation-based tables : DBMS should allow to create relations among tables. For example, An employee works in a particular department. It means that there should be two table named as Employee and Department and anyone should be able to create a relationship between these two entities in the database. Any one can easily understand the architecture of a database just by looking at the table names.
- Isolation of data and application : A database system and data should be isolated. Data or information is stored in Database. For simplifying its process it stores metadata, which is data about data.
- Less redundancy : The data that we stores in tables must follows the rules of normalization, so there will be no or less redundant data. Data should be stored in such a way that it should not be repeated in multiple tables. Good database must follow the normalization rule.
- Consistency : It is an important characteristic of DBMS. The data should be consistent after updation and it should be persistent.
- Query Language : DBMS is supported with query language. You can edit, update, delete and select records with the help of SQL query. You can also see any specific record by applying filter condition.
- ACID Properties : A good database must follow the ACID rule. It is an important characteristic of all DBMS. ACID properties means Atomicity, Consistency, Isolation, and Durability. When you perform any operation like insert, update and delete, database makes sure that the data is consistent and atomic. Your operation should not corrupt or lost the data.
- Multiuser and Concurrent Access : DBMS supports multi-user environment and allows them to access and manipulate data in parallel. Though there are restrictions on transactions when users attempt to handle the same data item, but users are always unaware of them.
- Multiple views : DBMS offers multiple views for different users. A user who is in the Sales department will have a different view of database than a person working in the Production department. This feature enables the users to have a concentrate view of the database according to their requirements.
- Security : DBMS provides many features to support security of DATA such as Multiple views, Multiuser and Concurrent Access. For example, An employee works in sales department cannot access the account department data directly unless he has permission. Multiple user can access the same data at a time but they are unaware to each other, Database Users
There are four different types of Database Users. These users are differentiated by their needs.- Naive users: Are unsophisticated users, they do not want to know about internal working of system that how the data saves in database. They directly use the application. Suppose that anyone want to know balance in his account or want to transfersome money, then he login and check their balance and transfer. He does not want to know about internal working that how money actually transferred.
- Application programmers: Are computer programmers, who uses different tools to write application and user interfaces. By using these tools they can directly generate forms and reports.
- Sophisticated users: These users are database programmer who writes SQL queries. These programmer works with database objects. They interact with the database through structured query language.
- Specialized users: These are should have sound knowledge of DBMS because they write special database application programs. They are the developers who develop the complex programs according to the requirement.
Explain Three-Tier Architecture of DBMS in details.
Three-tier Client / Server database architecture is logically divided in three parts and known as- Database (Data) Tier
- Application (Middle) Tier
- User (Presentation) Tier
Database (Data) Tier : Main database is resides in this tier. All query processing languages are also resides in this tier. It is the most important layer because it decides how the stored data on the database is represented to the user. There are several considerations to be made when storing data such as right space allocation techniques, encryption decryption and security.
Application (Middle) Tier : This layer sits in the middle and acts as a mediator between the end-user and the database. It hides the complexity of database to the end user.
User (Presentation) Tier : Users directly interact with this layer. This level is also known as the view level. It also maintains the security of the database because it gives the access permission only to the data which they need at a particular time. Unnecessary data will not be displayed to the user.