Zawsze uważałem, że ogólna zasada RAID jest następująca:
- RAID 0: Najlepsza wydajność odczytu i zapisu od usuwania, największe ryzyko
- RAID 1: Nadmiarowy, przyzwoity do odczytu (uważam, że może czytać z różnych części pliku z różnych dysków twardych), nie najlepszy dla WRITE
- RAID 0 + 1 (01): łączy redundancję RAID 1 z wydajnością RAID 0
- RAID 1 + 0 (10): nieco lepsza wersja RAID 0 + 1
- RAID 5: dobra wydajność READ, zła wydajność WRITE, nadmiarowa
Czy to założenie jest prawidłowe? (i jak porównują się do konfiguracji JBOD dla wydajności We / Wy R / W)
Czy niektóre praktyczne konfiguracje RAID są lepsze dla różnych aplikacji: gier, edycji wideo, bazy danych (Access lub SQL)?
Myślałem o dyskach twardych, ale czy dotyczy to również dysków półprzewodnikowych?
Odpowiedzi:
Rajd 0 . Świetna prędkość odczytu i zapisu. Ryzyko awarii wzrosło wraz ze wzrostem liczby dysków członkowskich. Brak parzystości.
Rajd 1 . Wielka prędkość odczytu tylko przy prawidłowym wdrożeniu sterownika - jeśli używasz kontrolerów RAID Areca i LSI, mogą one zapewnić prawie taką samą zdolność odczytu dla zestawów RAID 1, jak zestawy RAID 0 (w granicach 10%). Pamiętaj, że w przypadku rozwiązań do raidowania oprogramowania istnieją dwa typy: oprogramowanie systemu operacyjnego i oprogramowanie płyty głównej.
Większość Raidów na płytach głównych nie oferuje dobrej wydajności odczytu Raid 1. Ostatnim razem, gdy sprawdzałem, że Windows i Linux nie mają również dobrej implementacji odczytów z Raid 1. BSD miało poprawnie zaimplementowaną implementację RAID 1, która wykorzystuje metodę odczytu roundrobin.
W skrócie, użyj RAID 1 dla redundancji i prędkości odczytu, jeśli używasz zaawansowanych kontrolerów.
Raid 1/0 i Raid 0/1 . To jest połączenie. Powiedzmy, że masz 10 dysków. Raid 1/0 polega na tym, że w każdym zestawie znajduje się lustro: Zestaw A (1 + 2), Zestaw B (3 + 4), Zestaw C (5 + 6), Zestaw D (7 + 8), Zestaw E (9+ 10), a następnie Wykonaj zestaw pasków na 5 zestawach (AE). W ten sposób każdy z zestawów może mieć awarię jednego dysku, ale jeśli dwa dyski ulegną awarii w tym samym zestawie, robisz to.
Raid 0/1 polega na tym, aby mieć zestaw pasków A (1 + 2 + 3 + 4 + 5) i zestaw B (6 + 7 + 8 + 9 + 10) i wykonać kopię lustrzaną dwóch zestawów. W ten sposób, jeśli dysk 2 i dysk 9 ulegną awarii, większość kontrolerów uważa to za całkowitą awarię (która w rzeczywistości nadal zawiera wszystkie dane).
Różnica między nimi jest niewielka, ale nie sądzę, że zazwyczaj dostajesz oba z kontrolera RAID.
Rajd 5 . bardzo mieszana torba: dla odczytów sekwencyjnych jest szybszy niż raid 1/0, a dla odczytu losowego jest nieco wolniejszy. Zauważ, że wydajność raidu 5 jest bardzo zależna od prędkości kontrolera (np. Nie możesz oczekiwać wiele na pokładzie raidu).
Rajd 6 . Redundancja wzrosła w porównaniu z Raid 5. dwa dyski mogą ulec awarii w dowolnym momencie, a podczas przebudowy macierzy po awarii 1 dysku nadal występuje redundancja (zwróć uwagę, że w przypadku awarii dysku RAID 5 macierz jest podobna do RAID 0 - awaria dowolnego dysku = całkowita strata ).
JBOD . Nie mogę wymyślić żadnej korzyści.
źródło
Jak sugeruje twoje pytanie, tak naprawdę nie istnieje „najlepsza” konfiguracja RAID, tylko najlepsza w określonych okolicznościach, a koszt jest często jednym z najważniejszych czynników.
Bez wchodzenia w szczegóły sterowników i oprogramowania, oto moje podstawowe zasady.
RAID 0 jest najszybszy, ponieważ możesz odczytywać i zapisywać na wielu dyskach jednocześnie, a żadne miejsce nie jest „marnowane” na nadmiarowość. Jeśli stracisz dowolny dysk, stracisz zestaw, więc RAID 0 powinien być używany tylko na komputerze, na którym ci nie zależy, lub jest łatwy do przywrócenia i nie zawiera cennych danych. Maszyna do gier może pasować do tego scenariusza, chociaż szczerze mówiąc, różnica prędkości nie jest tak zauważalna, że byłbym skłonny zaakceptować zwiększone ryzyko konieczności przebudowania maszyny. Może być również przydatny w naprawdę szybkich obszarach „scratch”, jeśli masz oprogramowanie, które tego wymaga.
RAID 1 jest bardzo popularną konfiguracją kopii lustrzanych, zwykle z 2 dyskami. Odczyty są na ogół nieco dwa razy szybsze niż na jednym dysku, podczas gdy zapisy są nieco wolniejsze niż na jednym dysku. Na serwerach RAID 1 jest doskonałym wyborem dla plików systemu operacyjnego. Jest to również dobry wybór, gdy potrzebujesz redundancji, twoje potrzeby przechowywania nie są tak duże, aby wymagać RAID 5 i możesz skorzystać z dodatkowej prędkości odczytu (pliki dziennika bazy danych są zwykle umieszczane na RAID 1).
RAID od 2 do 4 (nie dotyczy pytania) są na ogół nieużywane, z wyjątkiem produktów niektórych dostawców po stronie przedsiębiorstwa.
RAID 5 to kompromis między nie marnowaniem zbyt dużej ilości miejsca na redundancję a dalszym uzyskiwaniem dodatkowej wydajności dodatkowych dysków. Prędkości odczytu są bardzo dobre, ponieważ wszystkie dyski mogą brać udział. Prędkości zapisu mogą czasem stanowić problem w przypadku macierzy RAID 5, choć myślę, że czasami jest to zawyżone w zależności od sytuacji. Nawet w przypadku sprzętu, który wykonuje obliczenia parzystości, na macierzy RAID 5 występują niewielkie losowe zapisy, ponieważ każda logiczna operacja zapisu wymaga 4 operacji we / wy (odczyt z dysku danych, odczyt z dysku parzystości, zapis danych, zapis danych parzystości). Wybierz RAID 5, jeśli chcesz zmaksymalizować ilość dostępnej pamięci z zestawu dysków, zachowując jednocześnie wysoki poziom bezpieczeństwa. Unikaj, gdy aplikacja wymaga wysokiej wydajności i wymaga wielu małych losowych zapisów (dyski twarde maszyny wirtualnej, pliki danych bazy danych). Należy również pamiętać, że nowoczesne duże dyski odbudowują się długo, gdy ulegną awarii w ramach zestawu RAID 5, a to naraża dane na dłuższe ryzyko awarii drugiego dysku. RAID 6 może zmniejszyć to ryzyko kosztem jeszcze gorszej wydajności zapisu losowego.
RAID 1/0 i 0/1 mają prawie takie same parametry wydajności. 1/0 jest jednak preferowana, ponieważ awaria oznacza odbudowę tylko pary zaangażowanych dysków, a nie całego paska dysków. RAID 1/0 to najszybsza konfiguracja ogólnego przeznaczenia spośród wymienionych w pytaniu. Wydajność odczytu i zapisu jest świetna (odczyty mogą się odbywać na wszystkich dyskach jednocześnie, zapisy muszą się zdarzyć na wielu dyskach, ale nie jest potrzebny cykl odczytu / odczytu / zapisu / zapisu, taki jak RAID 5), chociaż RAID 5 może wygrać w pewnych okolicznościach. RAID 1/0 jest (co nie dziwi) również najdroższym w prawie wszystkich przypadkach. Należy go używać tylko wtedy, gdy wydajność ma krytyczne znaczenie, dane są bardzo cenne, a aplikacja nie toleruje przestojów. Często serwery baz danych (lub przynajmniej ich pliki danych) są dobrymi kandydatami do RAID 1/0.
Dyski półprzewodnikowe można rzeczywiście wprowadzić do konfiguracji RAID, szczególnie ze względu na wartość redundancji. Wiele dysków SSD może jednak przewyższać magistralę (SATA), do której są podłączone, szczególnie w przypadku operacji odczytu, więc efekt wydajności macierzy RAID jest mniej atrakcyjny dla dysków SSD.
źródło
Jeśli kupujesz sprzętowy kontroler RAID, wybierz RAID5. Ma najmniejszy narzut, a sprzętowy kontroler RAID prawie wyeliminuje karę narzutu z zapisu, ponieważ oblicza bity parzystości w sprzęcie. Raid5 odczytuje także wiele dysków, jednocześnie poprawiając szybkość odczytu i zapisu.
Tak, dotyczy to również dysków półprzewodnikowych. Test dysków SSD w Raid0 wykazał prawie liniowy wzrost prędkości.
Raid5 jest zdecydowanie najczęściej stosowaną technologią w świecie serwerów, ale dla laptopa z tylko 2 dyskami twardymi sugerowałbym, że raid1 dubluje.
JBOD nie ma redundancji w przypadku awarii dysku twardego, ale w zależności od ustawień może rozłożyć dane, aby zwiększyć wydajność, np. Raid.
źródło