Question 1: Database environment
Discuss how new developments in technology influence the job of the database administrator.
The DBA is responsible for designing and maintaining an enterprise’s database.
New technologies are always evolving. With the rise of the new technologies, the Database Administrator has to study these technologies and adopt beneficial changes. A Database administrator has to always study what is new, what new vulnerabilities are coming in the database and be ready for how to make your database secure against these vulnerabilities.
With every new technology, the DBA has to get himself trained and re-skilled
Question 2: The three-schema architecture
Consider the case of a large software development company that has several departments, such as Research and Development, Testing, Sales, Marketing, Finance, Human Resources, and so on. The company’s database has been designed using the three-schema architecture approach.
We can say that in the above example, all these departments are interacting with the user views. These users do not have any knowledge about how the data is stored? How many tables are there? Which are the primary keys etc? They only know that this is the view where they are storing and retrieving data.
The research and development department may have knowledge of conceptual. They also will not have any knowledge about the internal schema. The conceptual schema describes the database structure of the database hiding information about physical storage structures.
Only the database administrator and his team will have the knowledge about the internal schema. As it describes how the data is actually stored on the physical device. (Atkinson, 1981)
User Views
Internal Schema
Conceptual Schema
Question 3: Data quality
Data quality becomes even more important in today’ environment because: –
Question 4: Data redundancy Part One
Data Redundancy: – data redundancy is the repetition of unnecessary data in a single table or an entity in the database. All the repetition of the same data in more tables, this cause of the unnecessary waste of storage space. For example, in a business, there are many clients and they come to buy things various times? If in all these times, customer data is stored in a single table, there are lots of redundant data that may because of system failure. So the best way is to make multiple tables and store all the data in the database after normalization. According to this example, we must make a customer table and provide a unique key to the id of customer and store that key as the foreign key in other related tables.
The main problem of redundant data is that it may lead to the size of the database increasing dramatically, that can even cause system failure and you may be lost all the data. (Date & White, 1993)
Data redundancy problems: –
In this file structure, there is more than one record for each consultant. So it is very difficult to maintain data integrity. There might be cases on updating that some data is changed and other remains the same. (Date & White, 1990)
Data anomalies: –
Question 5: Data redundancy Part Two
Explain the cause of data redundancy in the file structure shown in Table 1 (above). Suggest what needs to be done to this file structure to avoid data redundancy and related data anomalies.
We know that the main cause of data redundancy is the repetition of unnecessary data in the given structure. To remove the data redundancy from the given table structure, we will need to normalize the table. Firstly decompose the given table into multiple tables. Here I created the patient, consultant, room, and appointment table from the given table.
Patient (in this table Patient Number is a primary key)
repetition
Patient Number (PK) |
Patient Name |
PN305 |
Megan Shaw |
PN308 |
Nick Taylor |
PN311 |
Robert Bay |
PN312 |
Peter Green |
PN329 |
Katerina Lola |
Consultant (in this table Consultant ID is a primary key)
Consultant ID (PK) |
Consultant Name |
Consultant Phone |
C025 |
Nelly Williams |
(1) 2222222 |
C202 |
Tom Bloom |
(2) 1111111 |
C228 |
Marry Gardiner |
(3) 3333333 |
Room (Room is Primary key)
room (PK) |
R02 |
R03 |
R08 |
Appointment (in this table Appointment number is a Primary key and Patient number, Consultant ID and Room are the foreign keys)
Appointment Number (PK) |
Patient Number (FK) |
Consultant ID (FK) |
Room (FK) |
Appointment Date and time |
A101 |
PN305 |
C025 |
R08 |
5/10/2016 09.00 |
A102 |
PN308 |
C202 |
R03 |
8/10/2016 14.03 |
A103 |
PN311 |
C228 |
R02 |
5/10/2016 09.00 |
A104 |
PN311 |
C228 |
R02 |
6/10/2016 13.30 |
A105 |
PN312 |
C202 |
R03 |
7/10/2016 14.30 |
A106 |
PN329 |
C202 |
R08 |
6/10/2016 16.00 |
A107 |
PN329 |
C025 |
R08 |
5/10/2016 10.30 |
Remove anomalies: –
Question 6: Designing a database
You have been asked to develop a database system for a large factory that produces kitchen equipment, mostly pots and pans of many types and sizes. The factory sends its products to many customers across the country.
You started the database design process by preparing the list of questions that you want to ask your customer. You also prepared a draft of the Database Life Cycle (DBLC).
Q1. What are the main types of pans and pots that you want to buy?
Q2. How much money will you spend on a pan and a pot?
Q3. What size do you prefer for a pan and a pot?
Q4. What material will you prefer for a pan and a pot?
Q5. What features do you prefer in a pan and pot (Microwave Safe, Insulated Handle etc.)
1) Database initial study: –
2) Database design: –
3) Implementation and loading: –
4) Testing and evaluation: – in this phase the database administrative test and evaluate the database after loading and implementation of the database. Here we test the database performance.
5) Operation: – in this phase, the database, its management, its operations, its users; its application programmers establish a complete information.
6) Maintain and Evaluation: – after performing all the phase the database administrator has the responsibility to perform routine maintenance activities. For example backup, recovery etc.
Question 7: Concurrent transactions Part One
According to me, transaction T1 firstly reads B=120 from the database and now in the buffer the value of B is120, then it performs B=B-70. Now the value of B is 50 in the buffer. T1 writes the value of B=50.
In next step Transaction, T2 reads the value of B=50 from the buffer and perform operation B=B*3 which means the value of B becomes 150 in the buffer.
In the next step transaction, T1 rollbacks the whole process of transaction T1 so that the value of B becomes 120 again in the Buffer. In the next step, the transaction T2 writes B=120 in the local buffer and in the next step it stores B=120 in the database. But in the given table database stores 150 value.
The problem is that T2 reads a value written by T1 before T1 Roll backed. Therefore, T2 reads a ‘Dirty’ value that is shown to be incorrect when the rollback of T1 executed. The behaviour of T2 depends on an incorrect input value
According to me, transaction T1 firstly read B=120 from the database and now in the buffer the value of B is 120, then it performs B=B-70. Now in the buffer the value of B is 50. T1 writes the value of B as 50.
In next step Transaction, T2 read the value of B=50 from the buffer and perform operation B=B*3 which means the value of B becomes 150 in the buffer. In the next step transaction T1 rollbacks the whole process of transaction T1, so now the value of B is 120 in the Buffer. So in the next step, the transaction T2 write B=120 in the local buffer and in the next step it stores B=120 in the database. But in the given table database it stores 150 value.
So the correct value of B must be 120.
Isolation transaction property is violated because the transaction T1 effects the transaction T2. This problem is isolation dirty read problem.
T1 |
T2 |
Lock-x(B) |
|
Read(B) |
|
B=B-70 |
|
Write (B) |
|
Lock-x(B) |
|
Read(B) |
|
B=B*3 |
|
Rollback |
|
Unlock(B) |
|
Write(B) |
|
Commit |
|
Unlock(B) |
The timestamping is used when the concurrent transition occurs. These transactions are equivalent to a particular serial order of arrival, rather than any serial ordering.
We can’t use the timestamping because this is non-recoverable scheduling.
Question 8: Concurrent transactions Part Two
In this given problem firstly Transaction T3 Read value M=300 from the database and store it temporarily in the local buffer.
In the next step, T3 calculate the value of M as M+40 which means that the value of M becomes 340. But the Transaction T4 reads Value M as 300 but local buffer stores M=300.
In the next step, T3 writes the value in local as 340. Now the value of M in local buffer is 340. In next step T3 stores, this 340 in database and T4 writes M as 300+55 in the local buffer. So M becomes 355. Now T4 replace database value 340 to 355.
In this given problem we lost the database value M=340.
According to transaction T3 the value of M=340 and in T4 the value of M=355. Both are correct but due to these current transactions, we lost the value of M=340.
Isolation transaction property is violated because the transaction T1 effects the transaction T2. This problem is isolation lost update read problem.
T3 |
T4 |
Lock-x(M) |
|
Read(M) |
|
M=M+40 |
|
Lock-x(M) |
|
Read(M) |
|
M=M+55 |
|
Write(M) |
|
Commit |
|
Unlock(M) |
|
Write(M) |
|
Commit |
|
Unlock(M) |
The timestamping is used when the concurrent transition occurs. These transactions are equivalent to a particular serial order of arrival, rather than any serial ordering.
We can’t use the timestamping because this is non-recoverable scheduling.(Silberschatz, Korth & Sudarshan, 2011)
Question 9: Database recovery
Consider the four situations described below and for each situation suggest a suitable recovery technique.
In case of failure of the hard drive, we should have proper backup and recovery plans. The regular backup must be taken from the drive and stored in some safe place. We can also opt for storing the data in more than one drives at the same time. By storing data at more than one place at a time, even if one hard disk drive gets corrupted, we can easily get the data from the other drive. (MacWhinney, 2000)
There must be audits at regular intervals which must check the integrity of the database. First of all, the serviceman must not be allowed to enter calculate the charged fee and it should be calculated by the system according to the data entered. There must also be some triggers that must verify the data that is being entered. At last, if such a condition occurs somehow, the database must be corrected, and the updated bill must be sent to the client.
In such a case, the company must be ready with the backup plans. There must be backup generators to provide electricity until power lines are restored. (SILBERSCHATZ, 2019)
In such a case, the clerk must again call back the client and get the remaining details. If he is unable to connect the client again he must rollback the database to the earlier state.
Question 10: Distributed databases
Consider a case of a large retail chain of grocery stores. The chain has many outlets across the country and a large number of employees.
Discuss, giving reasons, what kind of database you would recommend for the retail chain. Your recommendation may include distributed versus centralized; relational versus object-oriented, and transactional versus analytical types of databases. In your discussion, explain all the advantages of the solution you recommended. State any assumptions that you have made.
We would recommend a distributed database due to various reasons. As in the distributed database, the data is stored in multiple physical locations, so in case of any disaster it will not affect the data and we can easily retrieve it from other locations. We can have homogeneously distributed databases to store the data. It will also make the operations faster.
I will prefer relational data because of high speed and high normalization. The data will be stored in rows and columns and we can use the same data in relation to other data by using normalization. We will not have to make copies of any data as in case of object-oriented database approach. Also, there are certain limits on the size of each object that object-oriented database can have whereas relational database does not pose any such restrictions.
I will also prefer a transactional database. In every database, there are cases when a transaction stops in between, that may be because of power failures, hardware failures or any other reasons. If we use a transactional database then the transactions will be rollbacked if they are not complete and we will ensure to have a correct database at all times. Otherwise, it may lead to data corruption.(Ramarkrishnan, 1997)
References: –
Atkinson, M. (1981). Database. Maidenhead, Berkshire, England: Pergamon Infotech.
Date, C., & White, C. (1993). A guide to DB2. Reading: Addison-Wesley.
Date, C., & White, C. (1990). A guide to DB2. Reading, Mass.: Addison-Wesley.
Larson, J. (1982). Database management system anatomy. Lexington, Mass.: Lexington Books.
MacWhinney, B. (2000). The database. Mahwah, NJ [u.a.]: Lawrence Erlbaum.
Ramarkrishnan, R. (1997). Database management system. London: McGraw-Hill Pub. Co. (ISE Editions).
Silberschatz, A., Korth, H., & Sudarshan, S. (2011). Database system concepts. New York: McGraw.
Essay Writing Service Features
Our Experience
No matter how complex your assignment is, we can find the right professional for your specific task. Contact Essay is an essay writing company that hires only the smartest minds to help you with your projects. Our expertise allows us to provide students with high-quality academic writing, editing & proofreading services.Free Features
Free revision policy
$10Free bibliography & reference
$8Free title page
$8Free formatting
$8How Our Essay Writing Service Works
First, you will need to complete an order form. It's not difficult but, in case there is anything you find not to be clear, you may always call us so that we can guide you through it. On the order form, you will need to include some basic information concerning your order: subject, topic, number of pages, etc. We also encourage our clients to upload any relevant information or sources that will help.
Complete the order formOnce we have all the information and instructions that we need, we select the most suitable writer for your assignment. While everything seems to be clear, the writer, who has complete knowledge of the subject, may need clarification from you. It is at that point that you would receive a call or email from us.
Writer’s assignmentAs soon as the writer has finished, it will be delivered both to the website and to your email address so that you will not miss it. If your deadline is close at hand, we will place a call to you to make sure that you receive the paper on time.
Completing the order and download