Question 1: (i) What are the possible applications of database system in a Bank? What are the advantages of using database system for banking applications?
(ii) Explain the three level DBMS Architecture in the context of an application of a database system in a University like IGNOU.
(iii) Consider the following schema of a student database:
Student (st_ID, st_name, st_programme)
Subject (su_ID, su_name, su_credits)
Marks (st_ID, su_ID, ma_marks)
Perform the following tasks for the database:
a. Define the Domain of each of the attribute.
b. List domain constraints on each of the domain
c. List the Super Key and Candidate keys for each of the relation
d. List all the Primary keys for the database
e. List all the Entity integrity constraints
f. List all the Referential integrity constraints
g. Enter at least 4-5 tuples in each database to create a valid relational instance
(iv) Consider the following schema:
Customer (cu_ID, cu_name, cu_type)
Purchase (pu_ID, cu_ID, it_ID, pu_dateofsale, pu_quantity)
Item (it_ID, it_name, it_supplier, it_quantity)
Write about 10 queries covering all the relational algebraic operations (UNION, INTERSECTION, SET DIFFERENCE, CARTESIAN PRODUCT, SELECTION, PROJECTION, JOIN, and DIVISION) in at least one of the queries. Please note that you must first write the query in English and then represent it using relational algebra. You may use more that one operator in a query.
(v) A University maintains the list of its programmes and students. A programme consists of a number of courses. Each programme may have compulsory courses and elective courses. All the courses of the University have 4 credits. A student is expected to take four courses in each semester. Duration of different programmes may vary from 2 semesters to 8 semesters. A course is taught by one teacher in a semester. Teachers have expertise in few areas and normally teach courses in that area. Identify the entities for the University as above. List all the attributes for all the entities. Identify all the relationships among entities. Draw the E-R diagram for the University. You should identify the keys, relationship cardinality etc. Make and state suitable assumptions.
Question 2: (i) What are different referential actions that may be required in order to maintain referential integrity constraints for the schema given in problem 1 (iii) when database modifications are being performed.
(ii) Consider the following relation for a Bank: Customer_Record ( Account Number, Holder Name, date of birth, age, address, Account Type, balance in account, Loan Amount, EMI of Loan, start date of loan, end date of loan)
An account holder can open only one account in the Bank. However, an account may be a joint account. An account holder may take more than one loans from the bank. Identify the functional dependencies in the relation given above. Normalise the relational up to BCNF. Make suitable assumptions, if any
(iii) Compare and contrast the following file organisation :
a. Heap Files versus Sequential file organisation
b. B – Tree indexed versus BST indexes
c. Indexed file organisation versus Hashed file organisation
d. Multi-list file organisation versus inverted filed organisation
(iv) Given the University system in problem 1
(v). Create the suitable relational design for the E-R diagram so created. Identify all the constraints on various attributes and tables. The table should be normalised and properly structured along with field names and constraints. You must also identify the set of possible queries and reports for the database.
Question 3: (i) Consider the following schema
Customer (cu_ID, cu_name, cu_type, cu_credit_limit)
Purchase (cu_ID, it_ID, pu_dateofsale, pu_quantity)
Item (it_ID, it_name, it_costperUnit)
Perform the following operations on these tables using SQL
a. Create the three tables giving suitable domains and constraints including referential actions.
b. Add one additional filed it_type in the item table, create a secondary index on it_name and drop any one constraint that you have created in step (a)
c. Create a view named SingleCustomer that shows the customer all the purchases made by him/her only.
d. Find the list of the customer names and type of those customers who have purchased an item named “Cricket Bat”
e. List the customer names and credit limit of those customers who have bought more than five items.
f. Create the list of items purchased by a customer whose ID is “C001” in the decreasing order of cost per unit of those items.
g. Calculate the total amount that is to be paid by customer “C001” on all the items purchased on 30th August 2011 by him/her.
(ii) Consider the following transactions in a Bank
o “Update all the Bank accounts to add monthly interest @6% per annum.” You may assume that the interest is calculated on the balance in that account at the time of calculation of interest.
o “Mr X withdraws from the account A001 an amount of Rs1,00,000/-“
o “Mr Z deposits an amount of Rs 50,000/- in the account A001.
Write the pseudo code for all the three transactions. Also explain the ‘ACID’ properties in the context of any one of these transactions. What are the possible problems that may be encountered if these transactions are executed concurrently? Show one non-serliasable schedule for concurrent execution of these transactions. Use two phase locking protocol and rewrite the pseudo codes of the transactions. Show a serialsable schedule using these pseudo codes. Draw the precedence graph for at least one schedule.
(iii) You have designed the relations, query and reports for the University database in question 2 (v). Now, implement your design using SQL in a suitable RDBMS. Enter meaningful data and test your queries and reports.
Question 4: For the following questions use the Student schema given in Question 1 (iii).
(i) In the student database the relation Marks stores the latest marks of the student. Assume that a student S001, in the subject MCS011 had obtained 40 marks. These marks were to be upgraded to 70 using an updating transaction. What would be various redo and undo entries for the database logs for the update operatrion. Explain when redo and undo would be required and how it can be performed in the context of transaction given above. Explain the concept of check point when many such update transactions are being performed.
(ii) Explain the possible security threats to the student database. How will you make the database more secure? You may create an authorisation matrix for the database. Make suitable assumptions.
(iii) Assume that the student schema is to be implemented as distributed database. The student data needs to kept as follows:
a. The study centres stores data of all those students who belong to that centre
b. The complete data of all the students is to be stored at University head quarter.
Write SQL queries that will fragment the data as per the need. Also explain if the proposed fragmentation is vertical or horizontal. Explain if any data replication is required.
(iv) You are asked to design a two tier client server system for the student database what features/functions will be made available on the client side and what on the server side. How will you distribute the functions/ responsibilities of the student database in the 3 tier model?