Home Database Mysql Tutorial RAID在SQL Server中的应用(RAID几种级别)

RAID在SQL Server中的应用(RAID几种级别)

Jun 07, 2016 pm 05:19 PM
raid

企业级的数据库应用大多部署在RAID磁盘阵列的服务器上,这样能提高磁盘的访问性能,并能够实现容错/容灾。RAID(冗余磁盘阵列),

企业级的数据库应用大多部署在RAID磁盘阵列的服务器上,这样能提高磁盘的访问性能,并能够实现容错/容灾。
RAID(冗余磁盘阵列),简单理解,就是拿一些廉价的硬盘来做成阵列。其目的无非是为了扩展存储容量,提升读写性能,实现数据冗余(备份容灾)。就像很早就有老外拿N台旧PC,做成一个强大的“服务器集群”。RAID技术诞生于1987年,由美国加州大学伯克利分校提出。
主流的大概可以分为几个级别:RAID 0,RAID 1,RAID 5,RAID 10 。配置起来也不是很复杂,有兴趣的朋友可以找相关的资料,自己动手实践。

SQL Server 2005常用的有几个级别0,1,5,10 下面我来简单说说这个几个级别的区别及其应用。

RAID 0 简称磁盘条带化,它可以提供最好的读写性能,如果你把两块磁盘做成了RAID0,,那么在写入数据的时候,就可以同时对A磁盘和B磁盘执行写入操作。这里我必须说明的是:“可以同时...写入操作”,并不是意味着将文件的相同内容“在同一时间内完全写入”A磁盘和B磁盘中。打个比方:有一个100M的文件需要写入磁盘中,假设单个磁盘的写入速度是10M/S,那么需要10秒钟才能完成写入工作。但如果在具有A、B两块磁盘的RAID 0阵列环境中,(以秒/S为最小单位的)单时间内,可以将10M内容写入A磁盘中,并同时将紧随的10M内容写入B磁盘中,这样算起来,写入速度变成了20M/S,只需要5秒钟就能搞定了,而且每块磁盘中只需存储50M的文件内容,不会造成硬盘存储压力。当然,上诉例子也许不恰当,也只是指的理论环境下,实际环境中会有很多其他因素,效率肯定不能达到。
毋庸置疑的是,这样肯定是能提高读写性能的,但是这样也带来了一个问题就是,如果其中的一部分数据丢失了,你的全部数据都不会找回来的,因为RAID0没有提供冗余恢复数据的策略。所以RAID0可以用在只读的数据库数据表,或者是经过复制过来的数据库上,如果你对数据丢失不敏感的话,也可以使用RAID 0,总之这个level下是高性能、无冗余。


RAID 1 磁盘镜像 它对读没有什么影响,如果有两块磁盘它只对写有影响,因为它采用了一块磁盘做冗余备份的方法,这样如果你有两块50G的磁盘,那么加起来就是100G,但是在RAID 1下,那么你只能使用50G ,这种方法会影响磁盘的空间使用,降低了I/O 写的性能。通俗点来讲:你将一个100M的文件写入RAID 1时,讲内容写入A磁盘的同时,也会将相同的内容写入B磁盘中。这样一来,两块磁盘的内容是完全一致的(这就传说中的”冗余“,并不是什么高深的东西)。本来只需要写入1块硬盘的,可是现在要写入到两块硬盘去,效率肯定会变低。至于“读”操作,RAID 1环境下,读取时候只使用到了一块硬盘,所以和普通的环境下没啥区别(如果两块硬盘都能够同时工作,那么还可以分摊压力的)。只是当第一个硬盘数据损坏或者挂掉了,就启动第二块硬盘。当然,两块硬盘都挂了,那就真的崩溃了。哈哈。值得一提的是,有些书或者文章上讲,RAID 1是在将第一块硬盘写入完成后,才将数据完整复制到第二块磁盘中做为镜像备份的这种说法有待考证,按我的理解,是同时复制写入的。

linux

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusion System, Explained
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers Of The Witch Tree - How To Unlock The Grappling Hook
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1670
14
PHP Tutorial
1274
29
C# Tutorial
1256
24
MySQL's Role: Databases in Web Applications MySQL's Role: Databases in Web Applications Apr 17, 2025 am 12:23 AM

The main role of MySQL in web applications is to store and manage data. 1.MySQL efficiently processes user information, product catalogs, transaction records and other data. 2. Through SQL query, developers can extract information from the database to generate dynamic content. 3.MySQL works based on the client-server model to ensure acceptable query speed.

Explain the role of InnoDB redo logs and undo logs. Explain the role of InnoDB redo logs and undo logs. Apr 15, 2025 am 12:16 AM

InnoDB uses redologs and undologs to ensure data consistency and reliability. 1.redologs record data page modification to ensure crash recovery and transaction persistence. 2.undologs records the original data value and supports transaction rollback and MVCC.

MySQL vs. Other Programming Languages: A Comparison MySQL vs. Other Programming Languages: A Comparison Apr 19, 2025 am 12:22 AM

Compared with other programming languages, MySQL is mainly used to store and manage data, while other languages ​​such as Python, Java, and C are used for logical processing and application development. MySQL is known for its high performance, scalability and cross-platform support, suitable for data management needs, while other languages ​​have advantages in their respective fields such as data analytics, enterprise applications, and system programming.

How does MySQL index cardinality affect query performance? How does MySQL index cardinality affect query performance? Apr 14, 2025 am 12:18 AM

MySQL index cardinality has a significant impact on query performance: 1. High cardinality index can more effectively narrow the data range and improve query efficiency; 2. Low cardinality index may lead to full table scanning and reduce query performance; 3. In joint index, high cardinality sequences should be placed in front to optimize query.

MySQL for Beginners: Getting Started with Database Management MySQL for Beginners: Getting Started with Database Management Apr 18, 2025 am 12:10 AM

The basic operations of MySQL include creating databases, tables, and using SQL to perform CRUD operations on data. 1. Create a database: CREATEDATABASEmy_first_db; 2. Create a table: CREATETABLEbooks(idINTAUTO_INCREMENTPRIMARYKEY, titleVARCHAR(100)NOTNULL, authorVARCHAR(100)NOTNULL, published_yearINT); 3. Insert data: INSERTINTObooks(title, author, published_year)VA

MySQL vs. Other Databases: Comparing the Options MySQL vs. Other Databases: Comparing the Options Apr 15, 2025 am 12:08 AM

MySQL is suitable for web applications and content management systems and is popular for its open source, high performance and ease of use. 1) Compared with PostgreSQL, MySQL performs better in simple queries and high concurrent read operations. 2) Compared with Oracle, MySQL is more popular among small and medium-sized enterprises because of its open source and low cost. 3) Compared with Microsoft SQL Server, MySQL is more suitable for cross-platform applications. 4) Unlike MongoDB, MySQL is more suitable for structured data and transaction processing.

Explain the InnoDB Buffer Pool and its importance for performance. Explain the InnoDB Buffer Pool and its importance for performance. Apr 19, 2025 am 12:24 AM

InnoDBBufferPool reduces disk I/O by caching data and indexing pages, improving database performance. Its working principle includes: 1. Data reading: Read data from BufferPool; 2. Data writing: After modifying the data, write to BufferPool and refresh it to disk regularly; 3. Cache management: Use the LRU algorithm to manage cache pages; 4. Reading mechanism: Load adjacent data pages in advance. By sizing the BufferPool and using multiple instances, database performance can be optimized.

MySQL: Structured Data and Relational Databases MySQL: Structured Data and Relational Databases Apr 18, 2025 am 12:22 AM

MySQL efficiently manages structured data through table structure and SQL query, and implements inter-table relationships through foreign keys. 1. Define the data format and type when creating a table. 2. Use foreign keys to establish relationships between tables. 3. Improve performance through indexing and query optimization. 4. Regularly backup and monitor databases to ensure data security and performance optimization.

See all articles