RAID 1

Andrzej Zawadzki zawadaa w gmail.com
Śro, 30 Sty 2008, 23:51:25 CET


Jacek Osiecki pisze:
> On Wed, 30 Jan 2008, Andrzej Zawadzki wrote:
> 
>> Jacek Osiecki pisze:
>>> On Wed, 30 Jan 2008, Kuba Staskiewicz wrote:
> 
>>>>> No i niektóre rzeczy lepiej działają bez zabawy w RAID - np. cache
>>>>> squida, partycja swapowa...
> 
>>>> A to juz chyba zalezy od typu macierzy. Raid1 oczywiscie spowolni
>>>> system
>>>> dyskowy ale raid0 albo raid5 z odpowiednio duza iloscia dyskow powinien
>>>> podniesc wydajnosc. Chociaz na pewno mdadm nie jest w stanie dorownac
> 
>>> Nie do końca jestem pewny czy RAID1 spowolni system - przy odczycie
>>> powinien być w stanie przyspieszyć odczyt podobnie jak RAID0. RAID5
>>> raczej prawie
>>> nigdy nie podniesie wydajności,
> 
>> Proszę, poczytaj troszkę o RAIDach - najlepiej na listach bazodanowców,
>> a później pisz. Takie opinie, które teraz wypisujesz to naprawdę...
> 
> Ale do czego konkretnie się odnosisz? Raid1 teoretycznie powinien
> przyspieszyć równoczesny odczyt z kilku miejsc - chyba nie zaprzeczysz?
Teoretycznie - nie wiem jak to jest w Linuksie ale np. FreeBSD ma takie
cudo (przeczytane na postgresowej liście [performance]:

http://www.freebsd.org/cgi/man.cgi?query=gmirror&apropos=0&sektion=8&manpath=FreeBSD+6-current&format=html

There is a -b (balance) option that seems pretty clear that it does not
read from all drives if it does not have to:

Create a mirror.
The order of components is important,
because a component's priority is based on its position
(starting from 0).  The component with the biggest priority
is used by the prefer balance algorithm and is also used as a
master component when resynchronization is needed, e.g. after
a power failure when the device was open for writing.

    Additional options include:

-b balance  Specifies balance algorithm to use, one of:

     load         Read from the component with the lowest load.

     prefer       Read from the component with the biggest priority.

     round-robin  Use round-robin algorithm when choosing component to read.

     split        Split read requests, which are bigger than or equal to
slice size on N pieces, where N is the number of active components.
This is the default balance algorithm.

Może ktoś wie czy tym się da sterować w Linuksie?

> Raid5 będzie wolniejszy nie ze względu na konieczność dokonywania obliczeń,
> ale ze względu na konieczność równoczesnego odczytu z 2-3 dysków (przy
> najprostszym układzie) przy odczycie każdego pojedynczego pliku. Próba
> równoczesnego odczytania dwóch dużych plików z różnych obszarów dysku
> będzie
> na RAID5 zauważalnie wolniejsza niż przy RAID1.
A widzisz teraz uściślasz :-P
Wszystkie testy pokazują, że przy np. 12 dyskach różnica między RAID5/6
a RAID10 się zaciera (wydajnościowa - bezpieczeństwo to inna kwestia).
Czytanie z RAID5 przy małej liczbie dysków jest gorsze, ale zapis...
będzie raczej szybszy (policzyć XOR dla nowych procków to pikuś ;-).

Co do spowolnienia działania po padzie - owszem - ale tylko na czas
przebudowy macierzy - przy większej liczbie dysków po przebudowie wiele
się nie zmieni. Problem w tym, że zanim się macierz nie skończy
przebudowywać jest niebezpiecznie - dlatego RAID6 wymyślili ;-) -
okazało się, że przy przebudowywaniu reszta dysków pracuje tak ostro, że
bardzo rośnie prawdopodobieństwo padu któregoś z pozostałych...

Zatem IMHO typ RAID trzeba dobrać do typu danych, Chyba, że się ma
duuużo dysków - wtedy 5/lepiej 6 czy 10 nie ma aż tak wielkiego znaczenia.

> 
>> ps1. ten "softwarowy" linuksowy RAID jest naprawdę bardzo często
>> znacznie lepszym rozwiązaniem niż sprzętowe "coś" - proponuję popatrzeć
> 
> Tu jak najbardziej się zgadzam - dlatego też wcale bym nie zachwycał się
> tak
> tymi sprzętowymi kontrolerami RAID... Nad softraidem przynajmniej masz
> większą kontrolę
Kontrolę, nie wiem... macierze mają fajny soft do zarządzania...

> - jedyne co jest pozytywne w sprzętowych to wygoda
> użytkowania (jeśli mamy dyski hotswap :)
No właśnie ten soft...ale np. powiększenie macierzy RAID5 o 6 nowych
dysków (bo sobie kupiłem) jest możliwe tylko w super drogich
urządzeniach, a Linux AFAIK (może devel) już potrafi dodać online (bez
konieczności robienia backupu i orania wszystkiego) nowe napędy.

-- 
Andrzej Zawadzki


Więcej informacji o liście dyskusyjnej pld-users-pl