Amity Institute of Information Technology
Fundamentals Database Management
Systems
BCA (Semester II)
Module V: CONCURRENCY CONTROL TECHNIQUES
Dr. Pooja Gambhir
Assistant Professor (AIIT)
Amity Institute of Information Technology
Content
1. Concurrency Control Techniques: Two-phase Locking Techniques for Concurrency
Control
2. Time-stamping in Concurrency control.
3. Database Security: Importance of data,
4. Threats and risks
5. Users and database privileges
6. Access Control
7. Security for Internet Applications
8. Role of Database Administrator
Amity Institute of Information Technology
Concurrency Control- Introduction
Concurrency control ensures simultaneous execution of transactions without
conflicts. Concurrency control is a fundamental concept in database systems that
ensures correct execution of simultaneous transactions without violating data
integrity. Below are some characteristics of concurrency control:
• It enforces isolation among transactions.
• It preserve database consistency through consistency preserving execution of
transactions.
• It resolve read-write and write-read conflicts.
Prevents problems like:
• Lost Update
• Dirty Read
• Non-repeatable Read
• Phantom Read
Two major techniques:
• Two Phase Locking (2PL) : Two-Phase Locking (2PL) manages this by acquiring all
locks before releasing any (growing/shrinking phases).
• Timestamp Ordering: Timestamping orders transactions based on their start time,
enforcing serializability without locks.
2PL ensures serializability but can cause deadlocks, while timestamping eliminates
Amity Institute of Information Technology
Two Phase Locking (2PL)
Locking is an operation which secures permission to read, OR permission to write a data item. Two phase locking is a
process used to gain ownership of shared resources without creating the possibility of deadlock. The 3 activities
taking place in the two-phase update algorithm are:
[Link] Acquisition
[Link] of Data
[Link] Lock
Two-phase locking prevents deadlocks by ensuring a process releases all held locks if it can't acquire all needed
resources without waiting. This avoids situations where processes wait on each other, preventing deadlock.
A transaction in the Two-Phase Locking Protocol can assume one of the 2 phases:
•Growing Phase: In this phase a transaction can only acquire locks but cannot release any lock. The point when a
transaction acquires all the locks it needs is called the Lock Point.
•Shrinking Phase: In this phase a transaction can only release locks but cannot acquire any.
Amity Institute of Information Technology
Two Phase Locking (2PL)
Types of Lock
• Shared Lock (S): Shared Lock is also called a read-only lock, allows multiple
transactions to access the same data item for reading at the same time. However,
transactions with this lock cannot make changes to the data. A shared lock is
requested using the lock-S instruction.
• Exclusive Lock (X): An Exclusive Lock allows a transaction to both read and modify
a data item. This lock is exclusive, meaning no other transaction can access the
same data item while this lock is held. An exclusive lock is requested using the
lock-X
Lock instruction.
Conversions
In the Two-Phase Locking Protocol, lock conversion means changing the type of lock on
data while a transaction is happening. This process is carefully controlled to
maintain consistency in the database.
• Upgrading a Lock: This means changing a shared lock (S) to an exclusive lock (X).
For example, if a transaction initially only needs to read data (S) but later
decides it needs to update the same data, it can request an upgrade to an exclusive
lock (X). However, this can only happen during the Growing Phase, where the
transaction is still acquiring locks.
• Downgrading a Lock: This means changing an exclusive lock (X) to a shared lock (S).
For instance, if a transaction initially planned to modify data (X lock) but later
Amity Institute of Information Technology
Two Phase
Locking (2PL)
Amity Institute of Information Technology
Let's see a transaction implementing
2-PL. This is a basic outline of a transaction that demonstrates how locking and
unlocking work in the Two-Phase Locking Protocol (2PL).
Transaction T1
•The growing Phase is from steps 1-3
•The shrinking Phase is from steps 5-7
•Lock Point at 3
Transaction T2
•The growing Phase is from steps 2-6
•The shrinking Phase is from steps 8-9
•Lock Point at 6
Amity Institute of Information Technology
Lock Point: The lock point in a transaction is the moment when the transaction finishes acquiring all the
locks it needs. After this point, no new locks can be added, and the transaction starts releasing locks. It’s a key step in
the Two-Phase Locking Protocol to ensure the rules of growing and shrinking phases are followed.
Example of 2PL
Imagine a library system where multiple users can borrow or return books. Each action (like borrowing or returning) is treated as a
transaction. Here's how the Two-Phase Locking Protocol (2PL) works, including the lock point:
User A wants to:
[Link] the availability of Book X.
[Link] Book X if it's available.
[Link] the library's record.
Growing Phase (Locks are Acquired):
[Link] A locks Book X with a shared lock (S) to check its availability.
[Link] confirming the book is available, User A upgrades the lock to an exclusive lock (X) to borrow it.
[Link] A locks the library's record to update the borrowing details.
Lock Point: Once User A has acquired all the necessary locks (on Book X and the library record), the transaction reaches the lock
point. No more locks can be acquired after this.
Shrinking Phase (Locks are Released):
[Link] A updates the record and releases the lock on the library's record.
[Link] A finishes borrowing and releases the exclusive lock on Book X.
This process ensures that no other user can interfere with Book X or the library record during the transaction, maintaining data
accuracy and consistency. The lock point ensures that all locks are acquired before any are released, following the 2PL rules.
Amity Institute of Information Technology
Drawbacks of Two-Phase Locking (2-PL)
Two-phase locking (2PL) ensures that transactions are executed in
the correct order by using two phases: acquiring and releasing
locks. However, it has some drawbacks:
• Deadlocks: Transactions can get stuck waiting for each other’s
locks, causing them to freeze indefinitely.
• Cascading Rollbacks: If one transaction fails, others that
depend on it might also fail leading to inefficiency and
potential data issues.
• Lock Contention: Too many transactions competing for the same
locks can slow down the system, especially when many users are
working at the same time.
• Limited Concurrency: The strict rules of 2PL can reduce how many
Amity Institute of Information Technology
Cascading rollbacks in 2PL
Key Points:
1. Transaction T1:
• T1 acquires an exclusive lock (X) on data item A,
performs a write operation on A and then acquires
a shared lock (S) on B.
• T1 reaches its lock point (LP) after acquiring all
locks.
• Eventually, T1 fails and a rollback is triggered,
undoing its changes.
2. Transaction T2:
• T2 reads A after T1 writes A. This is called a dirty
read because T1's write is not committed yet.
• When T1 rolls back, T2's operations become invalid,
and it is also forced to rollback.
3. Transaction T3:
• T3 reads A after T2 reads A. Since T2 depends on
the uncommitted changes of T1, T3 indirectly relies
on T1's changes.
• When T1 rolls back, T3 is also forced to rollback
The image illustrates a transaction schedule using the Two-Phase Locking
even though it was not directly interacting with T1's
(2PL) protocol, showing the sequence of actions for three transactions T1,
operations. T2 and T3.
Amity Institute of Information Technology
Deadlock in 2PL
Consider this simple example. We have two transactions T1 and T2.
Schedule: Lock-X1(A) Lock-X2(B) Lock-X1(B) Lock-X2(A)
This sequence represents a locking scenario where two transactions, T1 and T2 are
trying to lock two resources, A and B in a particular order. Here's what each step
means:
[Link]-X1(A):
Transaction T1 acquires an exclusive lock on resource A. This means T1 has full
control over A and no other transaction can use it until T1 releases the lock.
[Link]-X2(B):
Transaction T2 acquires an exclusive lock on resource B. Similarly, T2 now has full
control over B and no other transaction can access B until T2 releases the lock.
[Link]-X1(B):
Transaction T1 tries to acquire an exclusive lock on resource B but T2 already holds
the lock on B. So, T1 must wait for T2 to release the lock.
[Link]-X2(A):
At the same time, Transaction T2 tries to acquire an exclusive lock on resource A but
T1 already holds the lock on A. So, T2 must wait for T1 to release the lock.
The above-mentioned type of 2-PL is called Basic 2PL. To sum it up, it
ensures Conflict Serializability but does not prevent Cascading Rollback and Deadlock.
Amity Institute of Information Technology
Types of 2PL
[Link] 2PL
• Follows standard growing and shrinking phases
• Ensures serializability
• Does not prevent cascading rollback
2. Strict Two-Phase Locking
Advantages:
• Exclusive locks released after commit/abort
• Easy recovery
• Prevents cascading rollback
• Maintains consistency
• Most commonly used in DBMS
3. Rigorous Two-Phase Locking
• All locks released after commit
• Stronger than strict 2PL
• Guarantees strict schedule
4. Conservative Two-Phase Locking
• Transaction acquires all locks at start
• Prevents deadlocks
• Hard to implement
Amity Institute of Information Technology
Timestamp-Based Concurrency Control
A timestamp is a tag showing when a transaction or data item was last used. It can be assigned using the system
clock or a logical counter. Each data item has two timestamps: one for the last read and one for the last write.
• W-timestamp(X): This means the latest time when the data item X has been written into.
• R-timestamp(X): This means the latest time when the data item X has been read from. These 2 timestamps are
updated each time a successful read/write operation is performed on the data item X.
Timestamp-based concurrency control is a technique used in database management systems
(DBMS) to ensure serializability of transactions without using locks. It uses
timestamps to determine the order of transaction execution and ensures that conflicting
operations follow a consistent order.
Each transaction T is assigned a unique timestamp TS(T) when it enters the system. This
timestamp determines the transaction’s place in the execution order.
Timestamp Ordering Protocol
The Timestamp Ordering Protocol enforces that older transactions (with smaller
timestamps) are given higher priority. This prevents conflicts and ensures the
execution is serializable and deadlock-free.
For example:
If Transaction T1 enters the system first, it gets a timestamp TS(T1) = 007
Amity Institute of Information Technology
Features of Timestamp Ordering Protocol
1. Transaction Priority:
•Older transactions (those with smaller timestamps) are given higher priority.
•For example, if transaction T1 has a timestamp of 007 times and transaction T2 has a timestamp of 009 times, T1
will execute first as it entered the system earlier.
2. Early Conflict Management:
Unlike lock-based protocols, which manage conflicts during execution, timestamp-based protocols start managing
conflicts as soon as a transaction is created.
3. Ensuring Serializability:
The protocol ensures that the schedule of transactions is serializable. This means the transactions can be executed
in an order that is logically equivalent to their timestamp order.
Amity Institute of Information Technology
Basic Timestamp-Ordering
The Basic T-O Protocol works by comparing the timestamp of the current transaction with the
timestamps on the data items it wants to read/write:
Precedence Graph for TS ordering
• Suppose, if an old transaction Ti has timestamp TS(Ti), a new transaction Tj is assigned
timestamp TS(Tj) such that TS(Ti) < TS(Tj).
• The protocol manages concurrent execution such that the timestamps determine the
serializability order.
• The timestamp ordering protocol ensures that any conflicting read and write operations are
executed in timestamp order.
• Whenever some Transaction T tries to issue a R_item(X) or a W_item(X), the Basic TO algorithm
compares the timestamp of T with R_TS(X) & W_TS(X) to ensure that the Timestamp order is not
violated.
Two Basic TO protocols are discussed below:
1. Whenever a Transaction T issues a R_item(X) operation, check the following conditions:
If W_TS(X) > TS(T) → Abort T (conflict: a newer write already occurred)
Else → Allow read and set R_TS(X) = max(R_TS(X), TS(T))
Amity Institute of Information Technology
Strict Timestamp-Ordering Protocol
The Strict Timestamp Ordering Protocol is an enhanced version that avoids cascading rollbacks by delaying
operations until it's safe to execute them.
Key Features
• Strict Execution Order: Transactions must execute in the exact order of their timestamps. Operations are delayed
if executing them would violate the timestamp order, ensuring a strict schedule.
• No Cascading Rollbacks: To avoid cascading aborts, a transaction must delay its operations until all conflicting
operations of older transactions are either committed or aborted.
• Consistency and Serializability: The protocol ensures conflict-serializable schedules by following strict ordering
rules based on transaction timestamps.
Rules for Read Operation R_item(X):
T can read X only if:
•W_TS(X) ≤ TS(T) and
•The transaction that last wrote X has committed
Rules for Write Operation W_item(X):
T can write X only if:
•R_TS(X) ≤ TS(T) and W_TS(X) ≤ TS(T) and
•All previous readers/writers of X have committed
If these conditions aren't met, the operation is delayed (not aborted immediately).
Amity Institute of Information Technology
Advantages/Disadvantages of Timestamp-Based Concurrency
Control
Advantages Disadvantages
Conflict-Serializable: Maintains a Cascading Rollbacks (in Basic TO protocol)
correct execution order
Deadlock-Free: No locks, so no Starvation: Newer transactions may be delayed
circular waits
Simple Conflict Resolution: Uses High Overhead: Constantly updating R_TS/W_TS
timestamps only
No Locking Needed: Avoids lock Lower Throughput under high concurrency
management complexity
Predictable Execution:
Operations follow a known Delayed Execution in Strict TO for consistency
order
Amity Institute of Information Technology
Database Security
Database security refers to the collective measures
used to protect a database management system
from malicious threats and unauthorized access. In
simple terms, it’s making sure that only the right
people can get to your data, and that the data
stays accurate and available. This includes
• Use strong passwords and enforce
rotation/MFA.
• Control user permissions with least privilege
(grant only what’s needed).
Example: Your databases hold the crown jewels—customer records,
finances, credentials. If attackers slip in, you’re staring at data theft, privacy
• Encrypt sensitive data at rest and in transit. breaches, and brand damage. The diagram shows those risks (SQL injection,
vuln exploits, privilege abuse, data exfiltration) hitting the app server.
• Keep regular backups and test restores.
To avoid a repeat of “exposed DB” wipe-and-ransom incidents, all traffic is
funneled through a DB firewall that inspects and blocks suspicious queries
• Aim for CIA: confidentiality (no leaks), integrity and enforces policy, while a remote log server captures tamper-resistant
(no tampering), availability (no downtime). audit trails for investigation. Clean traffic proceeds to the databases.
Amity Institute of Information Technology
Common Database attack, threats and Risks in DBMS
• SQL Injection (SQLi) – This is the number one threat to web databases. It happens when an attacker “injects”
malicious SQL code into a query (usually via a web form input) to manipulate the database. For example, they
might trick your database into giving away all user data by always making a condition true. (We’ll explain an
example in the next section.) SQL injection can allow attackers to bypass logins, steal or delete data, or even take
over the entire database.
• Weak Authentication & Brute-Force – If your database accounts use default or weak passwords, attackers can
simply guess or brute-force their way in. Brute-force attacks involve trying many passwords until one works. Not
having account lockouts or using common passwords makes this easy for hackers.
• Privilege Abuse (Insider Threat) – Sometimes the danger comes from legitimate users abusing their access. If a
user’s account has more privileges than necessary, they might misuse data. For example, a salesperson allowed to
view individual customer records might run a query to export all customer data and sell it to a competitor.
• Database Misconfiguration – An unsecured configuration can be an open door. For instance, installing a database
and leaving it with default settings (default user accounts, no encryption, open network ports) is dangerous. Many
cloud databases by default listen on all network interfaces and may be open to the internet if not locked down
Amity Institute of Information Technology
Example: How SQL Injection Works
Suppose your application checks a username and password like this (in pseudocode SQL):
-- Insecure example of a login query (vulnerable to SQLi)
SELECT * FROM users
WHERE username = 'admin' AND password = 'password';
The above query is fine if the inputs are legitimate. But if the application directly inserts whatever the user types
(without validation or parameterization), an attacker can input special SQL code to change the query. For instance, a
hacker could enter the following as the username:
' OR '1'='1
And leave the password blank. The application might then construct a query like:
-- Malicious input modifies the query logic
SELECT * FROM users
WHERE username = '' OR '1'='1' --' AND password = '';
• Attacker input: '' OR '1'='1' --
• Original intent: SELECT * FROM users WHERE username='<input>' AND password='<input>';
• Injected query (effectively): ... WHERE username='' OR '1'='1' -- AND password='...'
• -- comment: everything after it is ignored (the password check is skipped).
• Condition evaluated: username='' OR '1'='1' → always true because '1'='1'.
• Result: the WHERE clause matches, authentication is bypassed.
Amity Institute of Information Technology
Control Methods for Database Security
Database security control methods include strong authentication, role-based authorization (least privilege),
encryption at rest/in transit, auditing/logging, network access controls (firewalls/VPC), and backups with tested
restores.
• Use Strong Authentication and Access Control
• Principle of Least Privilege (LoP)
• Secure Configuration and Hardening
• Keep Your Database Software Up-to-Date
• Enable Encryption for Data in Transit and at Rest
• Backup Your Database Regularly (and Secure the Backups)
For example, imagine an attacker somehow obtains a read-only account’s password. If you followed least privilege,
that account can’t modify or dump all data. If you have monitoring, you might catch the unusual activity. If
encryption is enabled, the stolen data might be useless without keys. If you have backups, even a ransomware attack
that wipes your database can be recovered. It’s all about stacking the odds in your favor.
[Link]
Amity Institute of Information Technology
Cloud Database Security in DBMS
Cloud database security (DBMS) relies on a shared-responsibility
model using IAM-based access, network isolation (VPC/private
endpoints), encryption at rest/in transit (KMS/CMKs),
auditing/monitoring, automated backups/DR, and compliance
controls. It provides:
• Shared responsibility: provider secures infra; you secure
data, identities, configs.
• Strong IAM: least-privilege roles, MFA, short-lived creds;
rotate keys/secrets.
• Network isolation: VPC/private subnets, SGs/NACLs, private
endpoints (no public IPs).
• Encryption: at rest (KMS/CMKs) and in transit (TLS); manage
key rotation.
Amity Institute of Information Technology
Threats and Risks in DBMS
Common Threats
• Unauthorized access
• Data leakage
• SQL injection
• Malware attacks
• Insider threats
Risks
• Data loss
• Data corruption
• Financial loss
• Reputation damage
Amity Institute of Information Technology
Database Users and Privileges
Database users should only have access to the database resources
that they need to perform their tasks. For example, most users
should be able to read data but not modify or insert new data. A
smaller number of users typically need permission to perform a
wider range of database tasks—for example, create and modify
schemas, tables, and views. A very small number of users can
perform administrative tasks, such as rebalance nodes on a
cluster, or start or stop a database. You can also let certain
users extend their own privileges to other users.
Client authentication controls what database objects users can
access and change in the database. You specify access for
specific users or roles with GRANT statements.
In this section
•Database users
Amity Institute of Information Technology
Users and Privileges
Users:
• Database Administrator
GRANT Statement
• Application ProgrammerUsed to assign privileges
• End User GRANT SELECT, INSERT
• Security AdministratorON Employee
TO User1;
Privileges:
• SELECT REVOKE Statement
• INSERT Used to remove privileges
• UPDATE REVOKE INSERT
ON Employee
• DELETE FROM User1;
• ALTER
• INDEX
Amity Institute of Information Technology
Access Control in DBMS
Access control is a security mechanism that defines who can access information,
systems, or physical spaces. It ensures that only authorized people or processes get
the right level of access, reducing security risks.
• Ensures only verified users can access resources
• Uses authentication + authorization to control permissions
• Protects both digital systems and physical spaces
• Supports security, compliance, and accountability
Components of Access Control
Amity Institute of Information Technology
Components of Access Control in DBMS
1. Authentication
• Image Component: Reader/Controller (card reader or biometric device)
Function: Verifies the user's identity using a badge, keycard, PIN, or biometric
data.
Answers: "Who are you?"
2. Authorization
• Image Component: Access Control Software
Function: Checks if the authenticated user has permission to enter based on roles,
rules, or schedules.
Answers: "What are you allowed to do?"
3. Access
• Image Component: Electric Door Lock
Function: Grants access only when both authentication and authorization are
approved.
4. Manage
• Image Component: Access Control Software
Function: Administer users, update roles, add/remove access, and configure door
schedules.
Note: PoE network connects and powers all components.
Amity Institute of Information Technology
Types of Access Control in DBMS
• Role-Based Access Control (RBAC): Permissions are assigned to roles (e.g., Manager,
Teller) rather than individuals, simplifying management in large systems.
• Discretionary Access Control (DAC): The owner of the data decides who has access
and what privileges they have.
• Mandatory Access Control (MAC): A central authority restricts access based on
security levels (e.g., Confidential, Secret).
• Attribute-Based Access Control (ABAC): Access decisions are dynamic, based on user,
device, and environmental attributes Mandatory Access Control (MAC)
Discretionary Access Control (DAC) A central authority enforces access based on strict security
Access is controlled by the owner of the resource. levels.
• Owners decide who gets access • Used in high-security environments
• Users cannot change permissions
• Flexible but less secure
• Example: Military or government systems, SELinux
• Common in personal computers and small systems
Attribute-Based Access Control (ABAC)
Role-Based Access Control (RBAC) Access decisions are based on multiple attributes (user,
Users receive permissions based on their job roles. device, environment).
• Simplifies large-scale permission management • Highly dynamic and flexible
• Reduces human error and misuse • Evaluates policies using many attributes
• Example: HR role cannot create network accounts • Useful in modern cloud and zero-trust systems
Amity Institute of Information Technology
Categories of Access Control in DBMS
There are 2 main categories of access control:
1. Physical Access Control
Controls entry to physical spaces like buildings and rooms.
•Uses badges, keycards, locks, biometrics
•Protects hardware and physical assets
•Prevents unauthorized onsite access
2. Logical Access Control
Controls access to digital resources like networks, systems, and data.
•Uses passwords, MFA, firewalls, permissions
•Protects sensitive digital information
•Enforced through authentication and authorization
Amity Institute of Information Technology
Security for Internet Applications
Application security denotes the security precautionary measures utilized at the application level to prevent the
stealing or capturing of data or code inside the application. It also includes the security measurements made during
the advancement and design of applications, as well as techniques and methods for protecting the applications
whenever. Application security is the discipline of processes, tools, and works on planning to protect applications from
dangers all through the whole application lifecycle. It can assist associations in protecting a wide range of
applications (like inheritance, work area, web, portable) used by partners including clients, colleagues, and
representatives.
Types of Security
• Authentication
• Authorization
• Encryption
• Logging
• Application Security Testing
Amity Institute of Information Technology
Application Security Risks
• The first security risk known as cross-site scripting (XSS) permits an
attacker to introduce client-side code into a site page. The attacker gets
direct access to the user's data.
• Denial-of-service (DoS) and Distributed denial-of-service(DDoS) attacks are
used by some isolated attackers to flood a designated server or the
framework that upholds it with different sorts of traffic. This traffic in
the end keeps real users from getting to the server, making it shut down.
• A strategy called SQL injection (SQLi) is used by hackers to take advantage
of database flaws. These hackers, specifically, can uncover user
personalities and passwords and can also create, modify and delete data
without taking permission of the user.
• When a hacker executes a variety of attacks on an application and ends up
accidentally changing some spaces of memory then Memory corruption occurs.
As a result, the software can behave normally or shut down at the end.
• The buffer overflow happens when corrupted code is introduced into the
system's [Link]
memory. Overflowing the buffer zone's ability causes a neighboring
region ofin-dbms/
the application's memory to be overwritten with data, representing
Amity Institute of Information Technology
Role of Database Administrator
A Database Administrator (DBA) is a person responsible for managing and maintaining a Database Management
System (DBMS) to ensures the database runs smoothly, securely, and efficiently. The DBA handles task include
database installation, configuration, security management, user authorization, performance monitoring, backup, and
recovery. And also responsible for handling capacity planning, troubleshooting, migration, and system upgrades.
Overall, a DBA ensures that the database remains secure, available, consistent, and reliable for the organization.
Amity Institute of Information Technology
Types of DataBase Administrator (DBA) in DBMS
• Administrative DBA – Manages the database server, backups, security, replication,
migration, and troubleshooting to keep the system running properly.
• Data Warehouse DBA – Designs and maintains the data warehouse, integrates data from
multiple sources, and performs data cleaning before loading.
• Cloud DBA – Manages databases hosted on cloud platforms, ensuring data security,
availability, scalability, and reduced risk of data loss.
• Development DBA – Develops queries, stored procedures, and database code to support
application and organizational requirements.
• Application DBA – Manages database components related to applications, including
installation, upgrades, cloning, and data load processes.
• Database Architect – Designs database schemas, tables, and overall structure based
on organizational needs.
• OLAP DBA – Designs and maintains multidimensional cubes for OLAP and decision-
support systems.
• Data Modeler – Designs data models and structures; often supports database
architecture but may not always be classified as a DBA.
• Task-Oriented DBA – Specializes in specific tasks such as backup and recovery,
usually found in large organizations.
• Database Analyst – Assists in database design and analysis; sometimes considered a
Amity Institute of Information Technology
Duties of DataBase Administrator (DBA) in DBMS
• Hardware Selection – Chooses cost-effective and efficient hardware suitable for
organizational needs.
• Data Integrity and Security Management – Ensures data accuracy, maintains
relationships between data, and protects the database from unauthorized access.
• Database Accessibility Control – Grants user permissions and manages access rights
to control who can view or modify data.
• Database Design – Responsible for logical design, physical design, external model
design, and enforcing integrity and security constraints.
• Database Implementation – Installs and configures the DBMS and supervises database
creation and data loading.
• Query Processing Optimization – Improves query execution speed, performance, and
accuracy.
• Performance Tuning – Tunes SQL queries and optimizes the database system to ensure
fast and reliable data access.