Mam notebooka (Dell M6500, 16 GB RAM, I7-940M) z kontrolerem RAID (kontroler RAID). W tej chwili mam dwa dyski twarde SATA w macierzy RAID 0 (pasek) dla najlepszej wydajności.
Chcę kupić dyski SSD (Samsung 840 pro).
Czy RAID 0 (striping) z dwoma dyskami SSD ma sens, czy wystarczy jeden dysk?
Czyli 1 SSD 512 GB (bez raidu) czy 2 SSD 256GB (RAID 0 Stripe)?
Odpowiedzi:
Musisz poprawnie przeczytać pytanie.
Pyta o RAID0 STRIPE, a nie RAID1 MIRROR.
Moja odpowiedź: TAK, znaczna poprawa prędkości.
ref: http://staff.science.uva.nl/~delaat/rp/2009-2010/p30/presentation.pdf
Szybkość: Moje stacje robocze obsługują Linux Mint za pomocą raidu oprogramowania (mdadm), a ja uruchamiam 4 dyski w pasku z XFS jako systemem plików. Gdy usiądziesz na takiej stacji roboczej, nie chcesz wracać do dawnych czasów z JEDNYM napędem talerzy.
Wykonuj codzienne kopie zapasowe stacji roboczej z przyrostową kopią zapasową, co tydzień pełną kopię zapasową na wypadek awarii jednego dysku SSD.
Twoja prędkość jest świetna, ale jeśli JEDEN ssd się zawiesi, stracisz dużo danych. Więc jesteś ostrzeżony.
Utwórz kopię zapasową i użyj chmury do przechowywania dodatkowych plików.
Pamięć masowa: Mój NAS obsługuje wyłącznie FreeBSD ZFS ZRAID2 do przechowywania danych z 2 + 4 dyskami o pojemności 3 TB, więc mam 12 TB, a 2 dyski o pojemności 3 TB zapewniają nadmiarowość, więc mogę stracić 2 dyski jednocześnie bez utraty danych. Mój NAS działa na zwykłych dyskach.
ZFS jest obecnie najlepszym systemem plików dla dysków, na pewno do przechowywania. Możesz poszukać FreeBSD lub dedykowanego oprogramowania NAS, takiego jak FreeNAS, ZFSguru, NexentaStor ... Wybrałem ZFSguru, ponieważ lubię mówić o systemie FreeBSD. Używam na nim udziałów iSCSI i SMB / NFS.
Serwery:
Moim ulubionym jest używanie talerzy dla ZFS i SSD dla ZIL w ZFS. Ale to jest mroczna sztuka.
NOTATKA 1:
Staraj się unikać nalotów na sprzęt, w razie awarii musisz ponownie mieć ten sam sprzęt. Nie używaj tanich kontrolerów RAID na płytach głównych klientów. Spróbuj użyć nalotu programowego obsługiwanego przez system operacyjny, tylko w celu odzyskania, ponieważ system operacyjny ma więcej sposobów radzenia sobie z najazdem jako najbardziej gównianym oprogramowaniem rajdowym w tych kontrolerach sprzętowych.
UWAGA 2:
Korzystając z ZFS, za wszelką cenę unikaj sprzętowych kontrolerów RAID. Poszukaj płyt głównych z wystarczającą liczbą portów SATA do podłączenia dysków. Istnieją dedykowane kontrolery bez funkcji raidu.
Przygotuj nalot za pomocą ZFS
UWAGA 3:
Dyski SSD nie skalują się już po 4 dyskach Dyski HDD nadal skalują się po 5 dyskach
UWAGA 4:
Istnieją różne rodzaje dysków SSD
Masz SSD SLC i MLC. Pierwsze są najdroższe, ale najszybsze i najlepsze w przypadku ciężkich operacji odczytu / zapisu.
źródło
Tak, prędkości zapisu rosną. Korzystam z raidu 0 na 4 dyskach SSD o pojemności 30 GB każdy, moje prędkości zapisu zwiększają 600 Mb / s Niedługo będę aktualizować do 2x 256 dysków SATA3 SSD Raid 0, z tylko jednym dyskiem o prędkości 300 Mb / s, więc zależy to od Ciebie, zależy to również od ocena SATA, jeśli masz 2 dyski SSD SATA 3, możesz zapisać nawet 900 Mb / s, ale wymaga to również konfiguracji RAID 0. Więc to zależy od Ciebie, jeśli wolisz wydajność. Tak, jest szybszy i tak, stracisz wszystkie dane, ale jeśli tylko do gier, możesz je odbudować w niecały dzień. Również, jeśli masz opcje, aby uzyskać 2x 256 GB SSD lub 1x 512 SSD, wybrałbym 2x 256 SSD, dla znacznie szybszych prędkości zapisu.
źródło
Oto test, który wykonałem. możesz sam zdecydować o wyniku.
Środowisko
Test
Moja stacja robocza obejmuje.
cp
itime
poleceniatime
poleceniem używa „w czasie rzeczywistym” do porównania każdego przypadkuOto czas kopiowania pliku dla każdej sytuacji
RAID0 do RAID0
RAID0 na HDD
HDD na HDD
HDD na SSD
Uwaga: na mojej stacji roboczej używam tego dysku RAIDO do skompilowania dużego projektu C ++ / C # o pojemności 150 GB. To zaoszczędziło mi ponad dwie godziny z powodu konfiguracji RAID0. Jeśli potrzebujesz konfiguracji RAID0, zajrzyj do wpisu na blogu, który napisałem http://codeketchup.blogspot.sg/2016/03/how-to-setup-raid-0-with-ssd.html
źródło
Chociaż możesz RAID 0 dwa dyski SSD, aw niektórych scenariuszach widzisz znacznie szybsze prędkości odczytu / zapisu (zobacz tę recenzję od TechReport na skrajny przykład z 4 dyskami w RAID 0). Pojedynczy dysk SSD oferuje wystarczająco dobrą wydajność, że nie poleciłbym go. Dwa dyski w macierzy RAID 0 oznaczają, że jeśli jeden z nich ulegnie awarii, stracisz wszystkie swoje dane.
TechReport ma również tę recenzję porównującą skalowanie SSD w rodzinie dysków, która może pomóc porównać różnicę wydajności z większymi dyskami.
Duża część odpowiedzi na to pytanie będzie zależeć od zamierzonego użycia. Programowanie, edycja zdjęć, gry itp. Mogą mieć różne wzorce dostępu do pamięci. Najlepiej przeczytać recenzje na stronach z lepszymi technologiami.
źródło
Mój komputer roboczy to Dell M6500 i korzystam z dysku SSD Corsair 240 gb. M6500 ma interfejs SATA 2, więc nie można uzyskać pełnej prędkości dysków SATA 3. Powiem, że jest znacznie szybszy niż mój komputer osobisty, M6400 z 2 dyskami twardymi 160 GB w pasku RAID 0. Wierzę, że zobaczysz wzrost w przypadku 2 dysków SSD, ale nie podwoisz tego, co uzyskasz za pomocą tylko 1 dysku SSD.
źródło
zależy ci na szybkości i nie przejmujesz się redundancją ... więc odpowiem tylko na to. Rajd 0 może zaoferować nieznaczne ulepszenia, więc jeśli koszt 2 256 GB SSD nie różni się od 1 512 GB SSD, to idź.
źródło
To wymaga opinii, ale:
Ma sens, jeśli Twoim celem jest czysta wydajność pojedynczego woluminu.
Jeśli nie ma to sensu, jeśli:
Wszystko to zakłada, że „przy wystarczającym jednym” masz na myśli „Czy wystarczy jeden dysk SSD (nie w paski). Mieszanie dysku SSD i dysku twardego powinno technicznie działać, ale w zależności od macierzy RAID może to dać najgorsze z obu światów.
źródło
2X lub Nx mogą przyspieszyć tylko wtedy, gdy nie nasycisz magistrali, niektóre płyty główne współużytkują pasmo wzdłuż wszystkich posiadanych portów sata, podczas gdy inne pozwalają na osiągnięcie tego pasma na każdym porcie w tym samym czasie.
I pamiętaj ... prędkość odczytu nie jest taka sama jak prędkość zapisu ... normalnie prędkość zapisu jest znacznie wolniejsza niż odczyt (spróbuj szybko pisać na dysku SSD 32GiB z rzędu) większość z nich przejdzie bardzo szybko kilka megabajtów, a następnie spada do 25 Mb / s lub mniej (używają wewnętrznej pamięci podręcznej z pamięcią DDR3 wewnątrz dysku SSD, po napełnieniu nie mogą kontynuować pobierania danych z tak dużą prędkością, więc zapisy stają się wolniejsze).
Czasami musisz wykonać testy porównawcze, jeśli chcesz szybkiego rozruchu (czytanie jest ważne, nie pisz tak dużo), jeśli chcesz pisać ogromne pliki z losowymi danymi, upewnij się, że Twój test porównawczy zapisuje co najmniej kilka GiB tak szybko, jak to możliwe, niektóre dyski SSD mają 1 lub 2 GiB pamięci RAM na dysku SSD na pamięć podręczną zapisu ... więc lepiej wypełnij go, aby wykonać test porównawczy.
Informacje o procesorach IOP: jest to najważniejsza rzecz w KAŻDYM rodzaju pamięci masowej (usb, pendrive, dyski talerzowe, ssd itp.), Na przykład w przypadku małych plików lub, co lepiej powiedzieć, w przypadku małych fragmentów danych zapisanych / odczytanych, należy zapewnić (w przypadku dysków SSD ) mówi więcej niż ... wartość.
Teraz odpowiadając na twoje pytanie: -Jeśli „duży” ma mniej niż 2x IOP niż jeden z „małych”, nie kupuj „dużego”… kup to, co daje ci „maksymalne” IOP
Uwierzcie mi, procesory IOP są znacznie ważniejsze niż prędkości odczytu / zapisu, które są w „specyfikacjach” ... ponieważ: -Powiedzą, że osiągnięto najwyższą wartość (dla prędkości zapisu używają wewnętrznej pamięci RAM na dysku SSD i nie zapisują wystarczającej ilości danych do wypełnienia to ... a niektórzy używają również pamięci RAM komputera jako pamięci podręcznej zapisu, więc mówią, że prędkość zapisu GiB / s jest taka, że jest to główna pamięć RAM komputera, dane nie są jeszcze zapisywane na dysku SSD)
TERAZ, dla wszystkich, którzy mówią, że Raid0 sprawi, że stracisz ...
Jeśli to zrobisz, nic nie zostanie utracone: 1. - Użyj RAID 0 dla systemu operacyjnego 2. - Utwórz klon systemu operacyjnego na obudowie USB (lepiej, jeśli USB 3.1 Gen 2 ... 10 Gib / s)
Jeśli jeden dysk ulegnie awarii, wyjmiesz uszkodzony, umieścisz nowy, przywrócisz klon i za kilka minut system uruchomi się ponownie.
Teraz, jak sprawić, aby ten rozruch był również szybki po co najmniej jednym dysku w macierzy RAID 0: 1. - Po skonfigurowaniu systemu operacyjnego, jak chcesz, utwórz klon na USB 2. - Wyjmij dwa lub więcej dysków w macierzy RAID 0 i umieść je w bezpiecznym miejscu 3. - Załóż nowe na PC i odzyskaj klon
Kiedy jeden dysk umiera, masz inne gotowe do umieszczenia i uruchomienia ... zaledwie kilka sekund, aby wykonać zamianę i zrestartować komputer ... a następnie utwórz kolejny zestaw, aby umieścić w bezpiecznym miejscu.
Działa to z każdym rodzajem oprogramowania Linux RAID ... Dyski talerzowe, a także dyski SSD.
Koszt: podwójne dyski ... niektóre działają, inne są przygotowane z danymi i gotowe do uruchomienia z nich.
Teraz dla danych (nie systemowych) w macierzy RAID 0 i zerowej luźności w przypadku awarii (oprócz zmian dokonanych przed utworzeniem kopii zapasowej): 1. - Po każdym zapisie wykonaj kopię zapasową zmian na nośniku zewnętrznym (osobiście używam 5 różnych kopii w różnych wersjach nośników , SSD, talerz HDD, DVD, karty pamięci i pamięci USB) 2.- Przed wyłączeniem systemu upewnij się, że kopie zapasowe są zsynchronizowane
Pamiętaj, że RAID 0 jest świetny do „prędkości” podczas korzystania z niego ... ale każda awaria i wszystko, co TYLKO tam, zostanie utracone (kluczem jest to słowo: TYLKO).
Myślisz, że masz klon systemu na zewnętrznej obudowie USB ... utrata systemu nie stanowi problemu, uruchom Live Linux i przywróć klon na ten sam dysk (awaria oprogramowania skrzynki) lub na nowy diks (awaria sprzętu).
Myślisz, że masz wszystkie dane na niektórych kopiach zapasowych (więcej niż jedna kopia), utrata danych w łańcuchu nie stanowi problemu, po prostu skopiuj dane z kopii zapasowej po naprawieniu przyczyny awarii (wymień dyski itp.).
Teraz pomyśl, że nie chcesz też czekać na takie „kopiowanie z powrotem” ... można to zrobić, mając drugi zestaw dysków w stanie gotowym do użycia.
I w końcu pomyśl… po awarii, podczas pracy wykonaj zadanie w tle, aby odtworzyć taki drugi zestaw „gotowy do użycia”.
Jeśli weźmiesz te nawyki ... już nigdy więcej nie będziesz używać Linux RAID 0 ...
... z wyjątkiem sytuacji, gdy masz dużo pamięci RAM i możesz korzystać z ZFS.
Główne korzyści ZFS: 1. - Sumy kontrolne przy odczycie / zapisie, dzięki czemu można wykryć zmiany bitów w stanie wyłączonym 2. - Ma parametr, który pozwala mieć więcej niż jedną kopię każdego pliku lub folderu, który chcesz (z poziomami RAIDZ i bez nich ) 3.- Jeśli możesz sobie pozwolić na utratę 50% lub więcej miejsca, możesz użyć kopii ZFS = N tylko na jednym dysku (notebooku), a jeśli niektóre dane ulegną uszkodzeniu w trybie wyłączenia, ZFS może nadal czytać poprawnie (to przechowuje wiele kopii na tym samym dysku) ... możesz także używać go równolegle z poziomami RAFS-ZFS .. to powoduje większą redundancję.
Kopie ZFS = N jest jak stary poziom RAID 1, ale z sumami kontrolnymi i automatyczną naprawą w przypadku wykrycia złych danych.
Ostrzeganie o ZFS: błąd pamięci RAM na niektórych częściach ZFS może zniszczyć wszystkie ZFS i utracić wszystkie takie dane ... więc nigdy nie używaj jednego i tylko jednego ZFS do przechowywania danych ... mieć kopię zapasową wszystkich i mieć ją zawsze.
źródło
Nie testowałem
mdadm
ani z raidem sprzętowym0, ale testowałem ze stripingiem LVM.Krótka odpowiedź brzmi: łączna prędkość odczytu jest niższa niż tylko jednego czytnika SSD, jeśli używasz krótkich pasków (na przykład paska 4KiB).
Wygląda jak warunek wyścigu, wygląda na to, że LVM wysyła jedno żądanie bloku do każdego dysku SSD na raz, a nie równolegle.
Jeśli więc czas przetworzenia żądania jest dłuższy niż czas wymagany przez dysk SSD do przesłania danych do pamięci RAM, 2 lub więcej dysków SSD nie będzie wysyłało danych do pamięci RAM, przez większość czasu będą czekać na polecenia i przetwarzać takie polecenia.
Dopiero kiedy zaczynam umieszczać duże rozmiary pasków, łączna prędkość odczytu zaczyna być wyższa niż pojedynczy dysk SSD i mam na myśli paski 1MiB; zysk był około 1,3 do 1,5 razy szybszy przy 2xSSD niż tylko jeden.
Najpierw sprawdź, jak dobry jest twój dysk SSD w 4KiB z głębokością kolejki wynoszącą jeden, jeśli jest naprawdę dobry, nie próbuj usuwania pasków z małymi rozmiarami pasków, lepiej wcale nie usuwaj.
Miałem również test w dwóch równoległych procesach, oba
dd
polecenia, aby zobaczyć, czy odczyt z obu jednocześnie zmniejsza ich prędkość, redukcja jest minimalna.Dlatego o wiele lepiej jest używać ich do różnych rzeczy (OS / APPS) niż ich rozkładanie.
Jeśli dyski nie są dyskami SSD, ale obrotowymi, striping stanowi ogromny zysk.
W pewien sposób system operacyjny wysyła żądanie na jeden dysk naraz, a podczas gdy system operacyjny wysyła żądanie na następny dysk w zestawie stripping, poprzedni wysłał wszystkie dane do pamięci RAM w tym czasie, więc musi czekać, nie robiąc nic, czekając na następną prośbę.
Myślę więc, że pasek LVM jest źle zaimplementowany i można go poprawić, wysyłając kolejkę żądań pasków, dzięki czemu każdy dysk SSD ma więcej danych do wysłania do pamięci RAM przy każdym żądaniu.
Równanie matematyczne to: czas rozpoczęcia wysyłania danych w porównaniu z czasem wysłania danych do pamięci RAM.
Jeśli pierwsza część jest większa niż druga część równania, rozkładanie powoduje tylko, że rzeczy idą wolniej niż przy użyciu tylko jednego, aby uzyskać naprawdę dużą poprawę, druga część równania musi być znacznie większa niż pierwsza część.
W przypadku GOOD SSD część fisrt (na LVM) jest większa niż druga część. W przypadku DOBRYCH obrotów HDD część fisrt (na LVM) jest znacznie mniejsza niż druga część.
Opiera się to na moich własnych testach przeprowadzonych z LVM2 na dwóch szybkich dyskach SSD (> 35 Mb / s na 4KiB z głębokością kolejki jednego), testowałem z paskami 4KiB do 1 Mb; aż do rozmiaru paska 128 kB, łączna prędkość była niższa niż przy użyciu tylko jednego dysku SSD, następnie łączna prędkość jest nieco większa, aż do 1MiB, który był maksymalny (1,3x szybszy z 2 dyskami SSD niż tylko z jednym)
Tak więc tylko zysk 30%, podczas gdy jeśli używam ich równolegle do różnych zadań (bez usuwania pasków), mam zysk 96% (mogę użyć prędkości odczytu 98% na każdym w tym samym czasie).
Licząc to, jeden liniowy odczyt SSD przy 386 Mb / s, 2xSSD LVM2 4KiB pasek liniowy odczyt przy 186 Mb / s, więc jest znacznie wolniejszy niż przy użyciu tylko jednego SSD; 2xSSD LVM2 1MiB pasek liniowy odczyt przy 487 Mb / s; odczyt liniowy z obu na tym samym (bez usuwania) w innym procesie otrzymuję 374 Mb / s z każdego, więc w połączeniu wynosi 2x374 = 738 Mb / s
Mój wniosek oparty na wynikach testów jest następujący: w przypadku LVM2 zysk jest bardzo niski w przypadku dużych rozmiarów pasków (1MiB) i duży ubytek w przypadku normalnych rozmiarów pasków (4KiB do 64 kiB).
Pamiętaj, że czytałem za pomocą
dd
polecenia z urządzenia zbiorczego (/ dev / sda, / dev / sdb) oraz z objętości logicznej luzem (/ dev / mapper / test-test), przystatus=progress
wielkości bloku 1MiB i liczbie 10000, więc czytam 10GiB; i wykonuję restart po każdym teście, aby w pełni uniknąć buforów itp.Używam wersji Linux na żywo SystemRescueCD, aby uniknąć różnic związanych z ponownym uruchomieniem, takich jak uruchamianie z niewymiennego dysku (nośnika tylko do odczytu).
Mam nadzieję, że pewnego dnia poznam używanie Linuksa
mdadm
do testowania oprogramowania.źródło
tl; dr podstawowe testy porównawcze sugerują, że RAID 0 (striping) może znacznie poprawić przepustowość dysków SSD.
Konfiguracja testu porównawczego
RAID 0 (paski)
RAID 1 (dublowanie)
Indywidualny dysk
źródło
Myślę, że trudno jest odpowiedzieć na to pytanie. Jeśli mówisz o komputerze stacjonarnym z dobrym sprzętowym kontrolerem RAID, na pewno uzyskasz lepszą wydajność. W laptopie przeprowadzającym nalot programowy może się zdarzyć, że stworzysz wąskie gardło w swoim procesorze, które zapobiegnie znacznemu zwiększeniu wydajności. W zależności od tego, ile lat ma laptop, wydajność może być ograniczona przez magistralę SATA, jeśli jest ona wyposażona w interfejs SATA II, który można zmaksymalizować dzięki nowoczesnemu dyskowi SSD. Podejrzewam, że dostaniesz wzrost wydajności, ale być może nie wystarczy, aby uzasadnić wysiłek, nie będziesz wiedział, dopóki go nie przetestujesz.
źródło