Różnica wydajności SAS vs. SATA?

16

Nigdzie się nie wydaje.

Jaka jest oczekiwana różnica wydajności w scenariuszu zaplecza pamięci, który jest mocno sparaliżowany w dostępie (np. SAN, pamięć hosta wirtualizacji itp.) Między SAS i SATA, przy czym wszystkie inne rzeczy są równe?

Myślę, że sprowadza się to do wpływu NCQ (limit poleceń 32) na DUŻO wyższy limit poleceń dysków SAS.

Zastanawiamy się nad wymianą niektórych dysków i mamy szansę na SAS lub SATA - cała reszta jest na miejscu - i szukam oceny z punktu widzenia wydajności. Proszę zignorować wszystkie inne problemy (niezawodność itp.) - Zastanawiam się tylko nad wpływem SAS na podobne płyty (RPM itp. Równe). Dyski, które mamy na myśli, można zamówić z obydwoma złączami i - istnieje pomysł, aby użyć SATA do ewentualnego późniejszego wykorzystania. Różnica w cenie nie jest naprawdę wysoka, ale zastanawiałam się nad wpływem na wydajność ...

TomTom
źródło
2
To nie tak, że pytasz „Wszystkie rzeczy są równe”, ponieważ różnice w SAS i SATA są wystarczające, aby rzeczy… nie były równe.
Mark Henderson
@MarkHenderson Reality jest - wszystkie inne rzeczy mogą być równe. Seagate oferuje niektóre dyski z łącznością SAS lub SATA, więc wszystkie inne parametry (pamięć podręczna, prędkość obrotowa, prędkość poruszania się ruchomych części) są równe, wszystko sprowadza się do problemów z protokołem SAS / SATA.
TomTom
Myślę, że musiałbyś przeprowadzić analizę porównawczą poszczególnych dysków w ramach określonego obciążenia, aby mieć absolutną pewność - może możesz dostać kilka dysków z każdego z nich, przeprowadzić analizę porównawczą i opublikować ją tutaj?
Andrew
@Andrew Tak, jakbym był jedynym, który to zrobił. Pamiętam (słabo), kiedy raz powiedziano mi, żebym oczekiwał około 50% więcej IOPS w oparciu o możliwe długie kolejki w SAS (ale nie SATA) pod dużym obciążeniem równoległym (tak więc faktycznie dzieje się duża długość kolejki). Po prostu brakuje jakiegokolwiek odniesienia.
TomTom
1
Czy rozważasz nearline SAS przy 7,2k RPM, czy prawdziwe SATA?
Basil

Odpowiedzi:

11

Tak, obszerny zestaw poleceń SCSI jest dużą zaletą używania go w porównaniu z SATA. z Wiki SAS :

SATA używa zestawu poleceń opartego na równoległym zestawie poleceń ATA, a następnie rozszerza się poza ten zestaw, aby uwzględnić takie funkcje, jak kolejkowanie poleceń natywnych, podłączanie na gorąco i TRIM. SAS korzysta z zestawu poleceń SCSI, który obejmuje szerszy zakres funkcji, takich jak odzyskiwanie błędów, rezerwacje i odzyskiwanie bloków. Podstawowa usługa ATA ma polecenia tylko dla pamięci z dostępem bezpośrednim. Jednak polecenia SCSI mogą być tunelowane przez ATAPI [2] dla urządzeń takich jak napędy CD / DVD.

Komendy odzyskiwania po błędach i komendy odzyskiwania bloków mają zasadnicze znaczenie dla integralności danych, SMART jest naprawdę przeznaczony dla urządzeń konsumenckich.

Ponadto SAS wykorzystuje wyższe napięcie sygnalizacyjne, co pozwala na dłuższe kable w porównaniu do SATA. Jest to ważne, gdy próbujesz podłączyć dodatkową pamięć do istniejącej sieci SAN.

Nawiązywałeś do NCQ, ale SCSI zamiast tego używa TCQ, którego można używać w trzech różnych trybach, jednak większą premią imo w odniesieniu do równoległych konfiguracji jest możliwość wysłania do 2 ^ 64 poleceń przed zapełnieniem kolejki. Protokoły, takie jak iSCSI i Fibre Channel, ograniczają to obecnie, ale istnieje możliwość wykorzystania w przyszłości.

Mogę tylko odpowiedzieć na tę część, ponieważ nie wiem, czy wybranie SAS na kilka nowych dysków da ci tę samą korzyść z instalacji czysto SAS.

MDMoore313
źródło
Niektóre funkcje odzyskiwania po błędzie przeniosły się na ATA, a niektóre dyski obsługują teraz TLER (chociaż nie sądzę, aby w ATA istniało standardowe polecenie do skonfigurowania limitu czasu błędu, podobnie jak w SCSI).
Chris S
2

To późna odpowiedź, ale chciałbym dodać swoją opinię.

Z czysto szybkiego punktu widzenia dysk typu nearline (tak jak rozważane OP) będzie działał praktycznie tak samo, używając interfejsu SATA lub interfejsu SAS. Pomimo znacznie niższej głębokości NCQ ( 31 pozycji zamiast TCQ 64K) ta ograniczona kolejka sprzętowa jest wystarczająca, gdy zostanie rozszerzona o znacznie głębszą kolejkę IO opartą na oprogramowaniu, aby wyodrębnić prawie takie same IOPS, które można uzyskać za pomocą TCQ opartego na SAS .

W każdym razie nie oznacza to, że SAS nie ma praktycznych zalet:

  • znacznie lepsze wsparcie dla ekspanderów
  • obsługa interfejsu podwójnego łącza
  • tryb pełnego dupleksu
  • znacznie szybsza maksymalna szybkość sygnalizacji (12 Gb / s vs 6 Gb / s)

Jednak biorąc pod uwagę samą wydajność, smutną rzeczywistością jest to, że losowe wartości IOPS dysku mechanicznego są tak niskie, że interfejs nie ma prawie żadnego wpływu, z wyjątkiem ogromnych macierzy dyskowych, w których może czasami ograniczać prędkość sekwencyjnego transferu IO. Ze względu na to, jak uwzględniają opóźnienie obrotowe (które jest ukryte przed systemem operacyjnym), funkcją zwiększającą wydajność zabójcy jest NCQ / TCQ, a implementacja SATA jest w tym wystarczająco dobra.

Pojawiają się bardziej znaczące różnice, jeśli chodzi o dyski SAS wyższej klasy, które nie tylko oferują dyski o wyższej prędkości obrotowej (10 KB i 15 KB), ale mają także kilka interesujących technologii koalescencji zapisu (np .: technologia HGST media cache), które, nawiasem mówiąc, powoli rozlewając się także na dyski SATA dla przedsiębiorstw.

1 https://ata.wiki.kernel.org/index.php/Libata_FAQ :

Jednak standard ATA ma wadę projektową. Zakłada się, że znacznik NCQ jest 32-bitową bitmapą (32-bitowy dword). Jeśli wszystkie 32 tagi są potwierdzone, powstaje wartość (0xffffffff), która jest taka sama jak wartość zwrócona przez odczyt rejestru sprzętu po odłączeniu sprzętu na gorąco lub poważna awaria. Zatem, aby rozróżnić ten warunek, libata sztucznie ogranicza wszystkie konfiguracje NCQ do 31 znaczników zamiast 32.

Shodanshok
źródło
Dobra odpowiedź. Od tego czasu przenieśliśmy się na SATA SSD (w płycie montażowej SAS) - która w rzeczywistości SĄ przepustowością ograniczona;) Ale dzięki, spodziewałem się tyle, jak powiedziałeś.
TomTom,
Tak, dyski SSD to różne bestie;)
shodanshok
1

Stary post, ale chciałem go zaktualizować, ponieważ nigdy nie widzę wzmianki o najważniejszej różnicy w wydajności, która polega na tym, że SATA ma tylko półdupleks. Oczekuj ogromnej różnicy wydajności przy dużym obciążeniu dzięki kombinacji odczytu / zapisu. Zdecydowanie nie nadaje się do SAN lub IMO do wirtualizacji.

Oczywiście, jak wspomniano powyżej, SAS ma także inne zalety. Obecnie dyski NL-SAS można kupić za niewiele więcej niż SATA.

Nathan K.
źródło