0% found this document useful (0 votes)
7 views14 pages

DBMS Unit IV.docx

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 14

UNIT-IV: DATABASE RECOVERY & BACKUP, PERFORMANCE & SECURITY

INTRODUCTION TO DATABASE RECOVERY


Database recovery is the process of restoring a database to a correct state in the event of a failure.
This can involve a variety of methods an d tools depending on the type of failure (hardware
failure, software failure, human error, etc.) and the database management system (DBMS) in use.
Here are some general steps and considerations for database recovery:
Types of Failures
1. Hardware Failures: Disk crashes, power failures, etc.
2. Software Failures: Bugs in the DBMS, OS crashes, etc.
3. Human Errors: Accidental deletion or modification of data.
4. Natural Disasters: Floods, earthquakes, etc.
Types of Recovery
1. Cold Backup: Copying all database files after shutting down the DBMS.
2. Hot Backup: Copying database files while the DBMS is running and handling
transactions.
3. Logical Backup: Exporting data using SQL dumps.
4. Physical Backup: Copying physical files of the database.
Recovery Techniques
1. Full Database Backup: A complete copy of the entire database.
2. Incremental Backup: Only copying changes made since the last backup.
3. Differential Backup: Copying all changes made since the last full backup.
4. Point-in-Time Recovery: Restoring the database to a specific point in time before the
failure occurred.
Recovery Process
1. Identify the Failure: Determine the type and extent of the failure.
2. Restore Backup: Restore the most recent full backup.
3. Apply Transaction Logs: Apply transaction logs to bring the database to the point just
before the failure.
4. Verify Integrity: Check the integrit y of the restored database.
5. Test the Recovery: Ensure that the database is functioning correctly after the recovery.
Tools and Commands
● Oracle: RMAN (Recovery Manager), Data Pump, Export/Import utilities.
● SQL Server: SQL Server Manage ment Studio (SSMS), BACKUP and RESTORE
commands.
● MySQL: mysqldump, mysqlpump, Percona XtraBackup.
● PostgreSQL: pg_dump, pg_basebackup, WAL (Write-Ahead Logging).
Best Practices
1. Regular Backups: Schedule regular backups to minimize data loss.
2. Test Restores: Periodically test the restoration process to ensure backups are usable.
3. Use Multiple Backup Locations: Store backups in multiple locations to avoid a single
point of failure.
4. Automate Backup Processes: Use automation tools to schedule and manage backups.
5. Monitor Backup Jobs: Monitor backup jobs and logs to detect and address issues
promptly.
CONCURENCY CONTROL TECHNIQUES
Concurrency control techniques are essential in a database management system (DBMS) to
ensure that transactions are executed in a safe manner, preserving the consistency and integrity of
the database. These techniques help in managing the simultaneous operations without causing
conflicts or inconsistencies
● Executing a single transaction at a time will increase the waiting time of the other
transactions which may result in delay in the overall execution. Hence for increasing the
overall throughput and efficiency of the system, several transactions are executed.
● Concurrency control provides a procedure that is able to control concurrent execution of
the operations in the database.
● The fundamental goal of database concurrency control is to ensure that concurrent
execution of transactions does not result in a loss of database consistency
Concurrency Control Problems
● There are several problems that arise when numerous transactions a re executed
simultaneously in a random manner. The database transaction consist of two major
operations “Read” and “Write”. It is very important to manage these operations in the
concurrent execution of the transactions in order to maintain the consistency of the data.
Dirty Read Problem(Write-Read conflict)
Dirty read problem occurs when one transaction updates an item but due to some
unconditional events that transaction fails but before the transaction performs rollback, some
other transaction reads the update d value. Thus creates an inconsistency in the database.
Dirty read problem comes under the scenario of Write-Read conflict between the transactions
in the database
1. The lost update problem can be illustrated with the below scenario between two
transactions T1 and T2.
2. Transaction T1 modifies a database record without committing the changes.
3. T2 reads the uncommitted data changed by T1
4. T1 performs rollback
5. T2 has already read the uncommitted data of T1 which is no longer valid, thus creating
inconsistency in the database.
Lost Update Problem
Lost update problem occurs when two or more transactions modify the same data, resulting
in the update being overwritten nor lost by another transaction. The lost update problem can
be illustrated with the below scenario between two transactions T1 and T2.
1. T1 reads the value of an item from the database.
2. T2 starts and reads the same database item.
3. T1 updates the value of that data and performs a commit.
4. T2 updates the same data item based on its initial read and performs commit.
5. This results in the modification of T1 gets lost by the T2’s write which causes a lost
update problem in the database.
Concurrency Control Protocols
Concurrency control protocols are the set of rules which are maintained in order to solve the
concurrency control problems in the database. It ensures that the concurrent transactions can
execute properly while maintaining the database consistency. The concurrent execution of a
transaction is provided with atomicity, consistency, isolation, durability, and serializability (how
the system operates the shared data) via the concurrency control protocols.
● Locked based concurrency control protocol
● Timestamp based concurrency control protocol
Locked based Protocol
In locked based protocol, each transaction needs to acquire locks before they start accessing or
modifying the data items. There are two types of locks used in databases.
● Shared Lock: Shared lock is also known as read lock which allows multiple transactions to
read the data simultaneously. The transaction which is holding a shared lock can only read
the data item but it cannot modify the data item.
● Exclusive Lock: Exclusive lock is also known as the write lock. Exclusive lock allows a
transaction to update a data item. Only one transaction can hold the exclusive lock on a data
item at a time. While a transaction is holding an exclusive lock on a data item, no other
transaction is allowed to acquire a shared/exclusive lock on the same data item.
There are two kind of lock based protocol mostly used in database:
● Two Phase Locking Protocol: Two phase locking is a widely used technique which ensures
strict ordering of lock acquisition and release. Two phase locking protocol works in two
phases.
o Growing Phase: In this phase, the transaction starts acquiring locks before
performing any modification on the data items. Once a transaction acquires a
lock, that lock cannot be released until the transaction reaches the end of the
execution.
o Shrinking Phase: In this phase, the transaction releases all the acquired locks
once it performs all the modifications on the data item. Once the transaction
starts releasing the locks, it cannot acquire any locks further.
● Strict Two Phase Locking Protocol : It is almost similar to the two phase locking protocol
the only difference is that in two phase locking the transaction can release its locks before it
commits, but in case of strict two phase locking the transactions are only allowed to release
the locks only when they performs commits.
Timestamp based Protocol
● In this protocol each transaction has a timestamp attached to it. Timestamp is nothing but the
time in which a transaction enters into the system.
● The conflicting pairs of operations can be resolved by the timestamp ordering protocol
through the utilization of the timestamp values of the transactions. Therefore, guaranteeing
that the transactions take place in the correct order
Locking mechanisms:
Locking is a mechanism that allows a transaction to reserve a data item for its exclusive or
shared use, and prevent other transactions from modifying or reading it. Locking ensures the
consistency and isolation of transactions, which are two of the ACID properties of a DBMS
Locking mechanisms are a way for databases to produce sequential data output without the
sequential steps. The locks provide a method for securing the data that is being used so no
anomalies can occur like lost data or additional data that can be added because of the loss of a
transaction.
Problems that Locks Solve:
Lost Update Problem: A lost update occurs when two different transactions are trying
to update the same column on the same row within a database at the same time.
Temporary Update Problem: Temporary update or dirty read problem occurs when one
transaction updates an item and fails.
Incorrect Summary Problem: Incorrect Summary issue occurs when one transaction
takes summary over the value of all the instances of a repeated data-item, and second
transaction update few instances of that specific data-item.
Phantom Reads:
A lower isolation level increases the ability of many users to acces s the same data at the same
time, but increases the number of concurrency effects (such as dirty reads or lost updates)
users might encounter.
Different Types of Locks:
There are three primary types of locks that are used in a database.
Read Locks: These types of locks make it so that data can only be read. Depending on the
database system and restrictions on the read lock, this can make it so only one user can read
the data to allowing every user access to reading the data but not being able to modify
anything. The read lock can be applied to a single row, a section of rows, or an entire table.
This can also be dependent on the type of database system that is being used that could limit
the amount of data that can be locked for reading.
Write Locks: This type of lock is used for updates in the database system. When this lock is
applied it prevents any other transactions from changing the records that are being accessed.
This does allow transactions to read the data before it is modified and the changes are made
permanent.
Exclusive Write Locks: This type of lock is similar to a write lock. The only difference is
that with an exclusive write lock, the only things that can look at the data or modify the data
is the original transaction. No other transaction can read the data while this lock is applied.
There are also many other locks that signal intention to request another type of lock. These
locks are called multi-level-locks. This is useful to show other transactions what types of
locks the transaction has throughout the hierarchy of data levels.
Multi-Level-Locks
Update Lock: Signals intention to request an exclusive lock in the near future.
IS Lock: Signals intent to request shared (read) lock in the near future.
IX Lock: Signals intent to request an exclusive (write) lock in the near future.
Two-Phase Locking Protocol The Two Phase Commit is designed to coordinate the
transactions of the requests to the system. The idea behind the protocol is to produce
serialized results from a non-serialized system. This protocol requires that each transaction
issues lock and unlock requests in two phases: the shrinking phase and the growing phase.
During the growing phase transactions may obtain locks, but cannot release any. During the
shrinking phase transactions may release locks but may not obtain any new locks. By
following this protocol any update problems with the transaction can be detected and one
transaction gets rolled back. It also can raise the priority of the affected transaction to prevent
a repeat of the problem.
Deadlocks:
What is Deadlock in DBMS
A deadlock in a database management system (DBMS) is a situation where two or more
processes are blocked, waiting for each other to release a resource that they need to proceed with
their execution. This creates a circular wait, where each process is waiting for a resource that is
held by another process, leading to a complete blockage of the system. Deadlocks can occur in
multi-user, multi-tasking environments, where multiple processes are accessing shared resources
simultaneously and can cause decreased system performance or system failure if not resolved.
Example to understand Deadlock in DBMS
Let us use an example to better grasp the notion of Deadlock:
Assume T1 has a lock on some rows in the Employees database and needs to change some rows
in the Salary table. Simultaneously, Transaction T2 has locks on the Salary table rows (which T1
needs to update) but needs to update the Employees table rows held by Transaction T1.
The main issue has now arise, Transaction T1 will wait for transaction T2 to release the lock, and
transaction T2 will similarly wait for transaction T1. As a result, all activity comes to a halt and
will remain so indefinitely unless the DBMS recognizes the deadlock and aborts one of the
transactions.
To resolve this deadlock, either P1 or P2 must be killed or must release one of the resources to
allow the other process to proceed. The DBMS must have mechanisms in place to detect and
resolve deadlocks, such as timeout mechanisms or killing a process to release its resources.
This has been explained graphically by the given image:

1. Conditions for Deadlock


Four conditions must be present simultaneously for a deadlock to occur:
● Mutual Exclusion: At least one resource must be held in a non-sharable mode. That is,
only one transaction can use the resource at any given time.
● Hold and Wait: A transaction holding at least one resource is waiting to acquire
additional resources held by other transactions.
● No Preemption: Resources cannot be forcibly removed from the transactions holding
them until the resource is released.
● Circular Wait: There exists a set of transactions {T1,T2,…,Tn}\{T_1, T_2, \ldots,
T_n\}{T1​,T2​,…,Tn​} such that T1T_1T1​ is waiting for a resource held by T2T_2T2​,
T2T_2T2​ is waiting for a resource held by T3T_3T3​, and so on, with TnT_nTn​waiting
for a resource held by T1T_1T1​.
2. Deadlock Prevention
Deadlock prevention techniques ensure that at least one of the necessary conditions for deadlock
cannot hold:
● Mutual Exclusion: Ensuring that some resources are always available for sharing.
● Hold and Wait: Require that a transaction request all the required resources at once, or
require it to release all its held resources before requesting new ones.
● No Preemption: Allowing the system to preempt resources (forcefully take resources
from transactions).
● Circular Wait: Impose an ordering on the resource types and ensure that each transaction
requests resources in an increasing order of enumeration.
3. Deadlock Avoidance
Deadlock avoidance techniques dynamically examine the resource allocation state to ensure that
a circular wait condition never exists. The most common method is the Banker's Algorithm,
which assesses the risk of a transaction proceeding by simulating its future resource needs.
4. Deadlock Detection and Recovery
Deadlock detection involves identifying deadlocks after they occur, typically by constructing a
wait-for graph and looking for cycles:
● Wait-for Graph: A directed graph used for deadlock detection. Nodes represent
transactions, and edges represent dependencies.
● Cycle Detection: If the wait-for graph contains a cycle, then one or more deadlocked
transactions exist.

Recovery from deadlock usually involves aborting one or more transactions to break the cycle:
● Transaction Rollback: Choose a victim transaction to rollback to release resources and
break the deadlock.
● Transaction Termination: Permanently abort one or more transactions to resolve the
deadlock.
5. Example Scenario
Consider two transactions, T1 and T2:
1. T1 locks Resource R1.
2. T2 locks Resource R2.
3. T1 requests Resource R2 (currently held by T2) and waits.
4. T2 requests Resource R1 (currently held by T1) and waits.
This situation results in a deadlock, as both transactions are waiting for each other to release
resources.
Techniques of Backup
Backup techniques in a Database Management System (DBMS) are essential for ensuring data
availability and integrity in case of data loss, corruption, or system failure. Here are the primary
techniques for database backups:
1. Full Backup
A full backup involves copying the entire database, including all data, schemas, and objects, at a
specific point in time. Full backup assumes that each time you execute the task, the entire set of
data is copied to the chosen place. Full backup takes much space, time and PC resources, and
often makes many redundant data copies, as most data in the dataset bear no changes between
backups.
Advantages:
o Complete snapshot of the database.
o Simplifies restoration, as only one backup file is needed.
● Disadvantages:
o Time-consuming and resource-intensive.
o Requires significant storage space.
e.g. when you create a complete disk image backup, full backup is the only effective option.
2. Incremental Backup
An incremental backup only copies data that has changed since the last backup (either full or
incremental). Incremental backup processes only files that appeared or changed since the
previous incremental backup. After a first full backup, any next backup will be incremental,
saving only a difference between current dataset and a previous incremental copy
Advantages:
o Faster and requires less storage compared to full backups.
o Efficient use of resources.
● Disadvantages:
o Restoration is more complex, as multiple backup files are needed.
o Recovery time can be longer due to the need to restore from multiple backup sets.

Example: If you initiated a task to backup My Documents folder and conducted an incremental
backup right after completing a full backup, the task wouldn't copy any files. However, if you
modify some files and then run an incremental backup, the task will copy only these modified
files in your dataset.
3. Differential Backup
A differential backup captures all changes made since the last full backup. It does not reference
incremental backups. Differential backup is very much like incremental backup but utilizes
different types of data backup strategies. After a first full backup, any next backup will be
incremental, saving only a difference between current dataset and a previous incremental copy.
Advantages:
Faster backup process compared to full backups.
o
Quicker restoration compared to incremental backups, as only the last full backup
o
and the last differential backup are needed.
● Disadvantages:
o Requires more storage than incremental backups.
o Differential backup files grow larger over time until the next full backup is taken.

Example: Make a database backup task with differential backup. Let us assume that there are
100 tables in a database, and one table will change per minute. After 10 minutes of task
execution we will have a full copy of an entire database and a differential copy containing only
those 10 tables that was changed.
4. Mirror Backup
Mirror backups create an exact copy (mirror image) of the database, often in real-time or near
real-time.
● Advantages:
o Provides up-to-date copies of the database.
o Enables rapid failover in case of primary database failure.
● Disadvantages:
o Requires significant storage and network resources.
o Does not protect against logical errors (e.g., accidental deletion), as changes are
mirrored immediately.
5. Continuous Data Protection (CDP)
CDP, also known as real-time backup, continuously captures and records changes to data,
allowing the database to be restored to any point in time.
● Advantages:
o Allows for precise point-in-time recovery.
o Minimizes data loss in case of failure.
● Disadvantages:
o Requires substantial storage and computational resources.
o Can be complex to manage and configure.
6. Logical Backup
Logical backups involve exporting database objects, such as tables and procedures, into a format
like SQL scripts.
● Advantages:
o Portability: Logical backups can be easily moved and restored on different
systems.
o Flexibility in restoring specific objects.
● Disadvantages:
o Time-consuming for large databases.
o May not capture all database settings and configurations.
7. Physical Backup
Physical backups involve copying the physical files used by the database (data files, log files,
control files).
● Advantages:
o Typically faster than logical backups for large databases.
o Comprehensive, as it includes all database structures.
● Disadvantages:
o Less flexible: Physical backups are specific to the database system and version.
o Larger storage requirement compared to logical backups.
8. Snapshot Backup
Snapshot backups create a read-only copy of the database at a specific point in time, usually
using storage-level snapshot technology.
● Advantages:
o Very fast backup process.
o Minimal impact on database performance.
● Disadvantages:
o Dependent on underlying storage infrastructure.
o Typically not suitable for long-term retention.
9. Cloud Backup
Cloud backups involve storing database backups in cloud storage services, offering offsite
storage and redundancy.
● Advantages:
o Scalability and flexibility.
o Offsite protection against local disasters.
● Disadvantages:
o Requires reliable network connectivity.
o Potentially higher costs over time.
10. Tape Backup
Tape backups use magnetic tape as the storage medium, often used for archival and long-term
storage.
● Advantages:
o Cost-effective for long-term storage.
o High capacity and reliability.
● Disadvantages:
o Slower access and retrieval times.
o Requires specific hardware and handling.
Database Security Techniques
Ensuring the security and proper storage of databases is critical to protecting sensitive
information and maintaining data integrity. Here are various database security and storage
techniques:
Database Security Techniques
1. Access Control
o Role-Based Access Control (RBAC): Assign permissions to roles rather than
individuals, simplifying the management of user permissions.
o Mandatory Access Control (MAC): Restricts access based on information
sensitivity and user clearance levels.
o Discretionary Access Control (DAC): Allows data owners to decide who can
access their data.
2. Authentication and Authorization
o Multi-Factor Authentication (MFA): Requires users to provide two or more
verification factors to access the database.
o Strong Password Policies: Enforces complexity requirements and regular
password changes.
o OAuth and OpenID: Use these protocols for secure API authentication and
authorization.
3. Encryption
o Data-at-Rest Encryption: Encrypts data stored on disks using technologies like
AES (Advanced Encryption Standard).
o Data-in-Transit Encryption: Secures data during transmission using protocols
like TLS (Transport Layer Security).
o Column-Level Encryption: Encrypts specific columns within a database,
particularly useful for sensitive fields.
4. Database Auditing and Monitoring
o Audit Logs: Track database access and modifications to detect unauthorized
activities.
o Intrusion Detection Systems (IDS): Monitor database activity for suspicious
behavior.
o Anomaly Detection: Use machine learning to identify unusual patterns that may
indicate a security threat.
5. Data Masking
o Static Data Masking: Permanently hides sensitive data in non-production
environments.
o Dynamic Data Masking: Hides data in real-time based on user roles and
permissions.
6. Backup and Recovery
o Regular Backups: Implement automated, regular backups to prevent data loss.
o Disaster Recovery Planning: Develop and test disaster recovery plans to ensure
data availability.
7. Vulnerability Management
o Patch Management: Regularly apply security patches to database software to
protect against known vulnerabilities.
o Database Hardening: Disable unnecessary services and remove default accounts
to reduce the attack surface.
8. Network Security
o Firewalls: Use network and database firewalls to restrict access to trusted IP
addresses.
o Virtual Private Networks (VPNs): Securely connect to databases over public
networks.
Database Storage Techniques
What is storage? Why we need storage?
Storage is the collection of methods and technologies that can capture and hold digital
information on media. Storage is normally described as the data storage devices that are
connected to the computer through input or output operations that includes flash devices, hard
disks, SAN, NAS, old tape systems and other different types of medium.

Storage Types

There are a lot of options that are available for storing data. The main purpose is deciding which
is the most appropriate for you. All are different on the basis of their need and usage criteria e.g.
CD, Punch card, Zip disk, DVD, Blu-ray disc, Flash jump drive, Hard Drive, Floppy diskette,
NAS, Tape drive, SSD (Solid State Drive), NAS and Cloud Storage. For example, we are using
USB Flash drives for our students data management here at Network Walks Academy.

1. DAS (Directly Attached Storage)


This is as simple as it sounds DAS (Directly Attached Storage) device. A simple example of
DAS is an external hard drive connected through a Universal Serial Bus (USB) cable. When we
discuss about storage, we mean multiple drives, array of disks acting together in some way. The
DAS concept is the same whether it’s one or 24 drives. In the same way it is the same concept
regardless if we use a different cable. Basically, USB is much slow for large DAS units. DAS is
well suited for a small-to-medium sized business where enough amounts of storage can be
configured at a low startup cost. The DAS enclosure can be a separate cabinet that contains the
additional disk drives. An internal PCI-based RAID controller is typically configured in the
server to connect to the storage.
Advantages of DAS
● It is simpler to setup and configure over NAS / SAN
● It is very cost effective than NAS / SAN in terms of raw storage medium
● It does not use IP addresses. Network is not necessary, Faster, more preformat and better
latency over SAN / NAS
● Easier to deal with overall considering all things
Disadvantages of DAS
● Dedicated resources are needed for a single computer
● No economies of scale in sharing the storage
● We cannot manage the DAS via a network
● DAS needs a special hardware connection

2. NAS (Network Attached Storage)


Every computer that is irrespective of number of disks and the size of storage space available,
can be considered a NAS if it acts as a file server on the network. Another way, a network
attached storage (NAS) device is just a computer that shares files over the network. Theoretically
it is almost identical to the external USB hard drive, except instead of a USB cable connection, a
NAS will be using an Ethernet connection or some networking cable like LAN. NAS devices
have a shareable resource. Multiple users and computers can use that resource. The disk arrays in
both NAS and DAS are similar in function and operation, meaning you can create similar
RAIDS and partition styles on both. NAS is perfect for SMBs and organizations that need a
minimal-maintenance, reliable and flexible storage system that can quickly scale up as needed to
accommodate new users or growing data.
Advantages of NAS
● It is the economical way to provide large storage to many persons or computers
● It is several times easier to setup and configure versus SAN
● It is easier way to provide RAID redundancy to mass amount of users
● It allows users permissions, folder privileges, restricted access to documents, etc
● It has higher utilization of storage resources
Disadvantages of NAS
● It requires IP Address and takes up network space
● It has slower latency and potentially maximum data-transfer issues
● It performance can be affected by network status

3. SAN (Storage Area Network)


SAN stands for Storage Area Network. With SAN we typically see the solutions that are used
with medium-to-large size businesses, primarily due to the larger initial investment. SANs
require a setup consisting of disk controllers, SAN switches, host bus adapters and fiber cables.
The main benefit to a SAN-based storage solution is the ability to share the storage arrays to
multiple servers. This allows you to configure the storage capacity as needed, usually by a
dedicated SAN administrator. Higher levels of performance throughput are typical in a SAN
environment and data is highly available through redundant disk controllers and drives. SAN is
typically used in data centers, enterprises or virtual computing environments. It offers the speed
of DAS with the sharing, flexibility and reliability of NAS. SAN storage is a very sophisticated
option that’s meant to support complex, mission-critical applications.
Advantages of SAN
● It has economies of scale similar to that of NAS
● It has higher hardware utilization, similar to that of NAS
● It has speed similar or comparable to DAS
● It allows virtual environments, cloud computing, etc.
Disadvantages of SAN
● Its performance is affected by other SAN users
● Its performance is limited by network if configured incorrectly
● Better performance will still be found using DAS hardware
● It requires multiple static IP Addresses
● It generally consumes more IP addresses than NAS devices
RAID (Redundant Arrays of Independent Disks)
RAID (Redundant Arrays of Independent Disks) is a technique that makes use of a combination
of multiple disks for storing the data instead of using a single disk for increased performance,
data redundancy, or to protect data in the case of a drive failure. The term was defined by David
Patterson, Garth A. Gibson, and Randy Katz at the University of California, Berkeley in 1987. In
this article, we are going to discuss RAID and types of RAID their Advantages and
disadvantages in detail.
What is RAID?
RAID (Redundant Array of Independent Disks) is like having backup copies of your important
files stored in different places on several hard drives or solid-state drives (SSDs). If one drive
stops working, your data is still safe because you have other copies stored on the other drives.
It’s like having a safety net to protect your files from being lost if one of your drives breaks
down.
RAID (Redundant Array of Independent Disks) in a Database Management System (DBMS) is a
technology that combines multiple physical disk drives into a single logical unit for data storage.
The main purpose of RAID is to improve data reliability, availability, and performance. There are
different levels of RAID, each offering a balance of these benefits.
How RAID Works?
Imagine you have a bunch of friends, and you want to keep your favorite book safe. Instead of
giving the book to just one friend, you make copies and give a piece to each friend. Now, if one
friend loses their piece, you can still put the book together from the other pieces. That’s similar
to how RAID works with hard drives. It splits your data across multiple drives, so if one drive
fails, your data is still safe on the others. RAID helps keep your information secure, just like
spreading your favorite book among friends keeps it safe
What is a RAID Controller?
A RAID controller is like a boss for your hard drives in a big storage system. It works between
your computer’s operating system and the actual hard drives, organizing them into groups to
make them easier to manage. This helps speed up how fast your computer can read and write
data, and it also adds a layer of protection in case one of your hard drives breaks down. So, it’s
like having a smart helper that makes your hard drives work better and keeps your important data
safer.
Types of RAID Controller
There are three types of RAID controller:
Hardware Based: In hardware-based RAID, there’s a physical controller that manages the
whole array. This controller can handle the whole group of hard drives together. It’s designed to
work with different types of hard drives, like SATA (Serial Advanced Technology Attachment)
or SCSI (Small Computer System Interface). Sometimes, this controller is built right into the
computer’s main board, making it easier to set up and manage your RAID system. It’s like
having a captain for your team of hard drives, making sure they work together smoothly.
Software Based: In software-based RAID, the controller doesn’t have its own special hardware.
So it use computer’s main processor and memory to do its job. It performs the same function as a
hardware-based RAID controller, like managing the hard drives and keeping your data safe. But
because it’s sharing resources with other programs on your computer, it might not make things
run as fast. So, while it’s still helpful, it might not give you as big of a speed boost as a
hardware-based RAID system
Firmware Based: Firmware-based RAID controllers are like helpers built into the computer’s
main board. They work with the main processor, just like software-based RAID. But they only
implement when the computer starts up. Once the operating system is running, a special driver
takes over the RAID job. These controllers aren’t as expensive as hardware ones, but they make
the computer’s main processor work harder. People also call them hardware-assisted software
RAID, hybrid model RAID, or fake RAID.

You might also like