서버용 SSD 또는 HDD 더 좋습니까? 예를 들어 디스크가

발행물

스토리지와 SSD 또는 클래식 HDD 중 어떤 것이 더 좋은지에 대한 많은 토론을 읽었습니다. 꽤 혼란 스러워요. HDD는 여전히 선호되지만 왜 그럴까요?

활성 스토리지에 어떤 것이 더 좋습니까? 예를 들어 디스크가 항상 활성 인 데이터베이스의 경우?

SSD에 대하여.

찬성

  • 그들은 조용합니다.
  • 기계식이 아닙니다.
  • 가장 빠릅니다.

단점

  • 더 비싼.

질문.

  • SSD의 한 셀에 대한 수명주기를 사용하면 어떻게됩니까? 이 셀만으로 디스크가 줄어들고 정상적으로 작동합니까?
  • 가장 좋은 파일 시스템은 무엇입니까? ext4는 셀에 연속적으로 저장되므로 좋습니까?

HDD에 대하여.

찬성

  • 더 싸다.

단점

  • 기계적 결함이있는 경우 일반적으로 수리 할 방법이 없다고 생각합니다. (확인 해주세요.)
  • HDD 속도가 일반적으로 서버에 충분하다고 생각하지만 가장 느립니다.

가격에 관한 것입니까? HDD가 선호되는 이유는 무엇입니까? SSD는 서버에 정말 유용합니까?



답변

내 업무의 한 측면은 대규모 스토리지 시스템 (종종 “SAN”또는 “스토리지 영역 네트워크”)을 설계하고 구축하는 것입니다. 일반적으로 SSD와 HDD가 결합 된 계층화 된 접근 방식을 사용합니다.

즉, 각각에는 특정 이점이 있습니다.

  1. SSD는 거의 항상 바이트 당 비용이 높습니다. GB 당 GB 당 $ 0.068의 GB 당 10k SAS 4kn HDD를 구입할 수 있습니다. 즉, 약 $ 280에 4TB 드라이브를 구매할 수 있습니다. 반면 SSD는 일반적으로 기가 바이트 당 10 달러와 20 센트에 기가 바이트 당 비용이 있습니다.

  2. RAID를 다룰 때 속도는 덜 중요 해지고 대신 크기와 안정성이 훨씬 중요합니다. SSD보다 훨씬 저렴한 HDD로 12TB N + 2 RAID 시스템을 구축 할 수 있습니다. 이것은 주로 포인트 1 때문입니다.

  3. HDD를 올바르게 취급하면 교체 및 유지 관리 비용이 매우 저렴합니다. 바이트 당 비용이 저렴하기 때문에 고장으로 인해 HDD를 다른 것으로 교체하는 것이 더 저렴합니다. 또한 HDD 장애는 일반적으로 시간과 데이터 작성 시간과 관련이 있기 때문에 RAID 어레이를 재 구축 할 때 HDD를 교체해도 TBW 사용이 자동으로 시작되지 않습니다. (재 구축에 사용 된 TBW 비율은 전체적으로 미미하지만 요점은 확실합니다.)

  4. SSD 시장은 비교적 복잡합니다. SLC, MLC, TLC, QLC와 같이 지원되는 총 쓰기 횟수가 가장 높은 4 가지 주요 SSD 유형이 있습니다. SLC는 일반적으로 가장 많은 총 쓰기 수 (SSD 수명의 주요 제한 요소)를 지원하는 반면 QLC는 일반적으로 가장 적은 총 쓰기 수를 지원합니다.

즉, 내가 본 가장 성공적인 스토리지 시스템은 사용중인 두 드라이브와 계층화되어 있습니다. 개인적으로 클라이언트에게 권장하는 모든 스토리지 시스템은 일반적으로 다음 계층을 따릅니다.

  1. 계층 1은 일반적으로 RAID 10 SSD 전용 계층입니다. 데이터는 항상 계층 1에 기록됩니다.
  2. 계층 2는 일반적으로 RAID 50 또는 5 SSD 전용 계층입니다. 데이터는 1 단계에서 2 단계로 만료됩니다.
  3. 계층 3은 일반적으로 RAID 10 HDD 전용 계층입니다. 데이터는 2 단계에서 3 단계로 만료됩니다.
  4. 계층 4는 일반적으로 여러 그룹의 RAID 6 HDD 전용 계층입니다. 데이터는 계층 3에서 계층 4로 만료됩니다. RAID 6 그룹을 최대한 작게 만들어 드라이브 장애를 최대한 지원합니다.

계층을 늘리면 읽기 / 쓰기 성능이 떨어지고 데이터는 대부분의 데이터가 동일한 액세스 / 수정 빈도를 공유하는 계층으로 전파됩니다. 즉, 데이터를 자주 읽고 쓰는 횟수가 많을수록 데이터의 계층이 높아집니다.

잘 설계된 일부 파이버 채널을 뿌리면 실제로 온보드 드라이브 보다 처리량이 더 높은 SAN을 구축 할 수 있습니다 .

이제 당신이 언급 한 특정 항목들에 대해 :

SSD 질문

한 셀의 수명주기가 만료되면 SSD가 정확히 어떻게 작동합니까? 이 셀만으로 디스크가 줄어들고 정상적으로 작동합니까? 아니면 어떻게 된거 야?

  • 두 가지 드라이브 유형은 일반적으로 많은 “예비”셀로 설계됩니다. 즉, 셀이 죽으면 액세스 할 수없는 “추가”공간이 있습니다. (IIRC는 7-10 %입니다.) 이는 단일 “셀”(HDD의 섹터)이 죽으면 “예비”가 사용됨을 의미합니다. 두 드라이브의 SMART 진단 유틸리티를 통해이 상태를 확인할 수 있습니다.

작성하는 가장 좋은 솔루션 (파일 시스템)은 무엇입니까? 셀에 연속적으로 저장하기 때문에 ext4가 좋다고 생각합니까?

  • SSD의 경우 이는 전적으로 관련이 없습니다. 액세스 시간이 일반적으로 선형이므로 셀 위치는 중요하지 않습니다.

HDD 질문

기계적 결함이있는 경우 수리 할 수있는 방법이 없습니까?

  • 부분적으로 잘못되었습니다. HDD는 실제로 대부분의 장애 상황에서 데이터를 복구 하기더 쉽습니다 . (참고 : 내가 말했듯이 용이 하지 쉽습니다 .)이 전문 장비가 필요하지만 여기에 성공 비율이 꽤 높은 것 같다. 플래터는 종종 읽을 수 있습니다 밖으로 드라이브가 죽은 경우 데이터 복구를 할 수 있습니다 특수 장비에 의해 하드 디스크 자체.

가장 느리지 만 HDD 속도가 서버를 사용하기에 충분하기 때문에 속도가 그렇게 중요하지 않다고 생각합니까?

  • 일반적으로 RAID를 사용할 때는 전체 속도를 높일 수있는 속도 쌍을 이루는 RAID 설정을 사용할 수 있으므로 단일 드라이브 속도가 덜 중요해집니다. (RAID 0, 5, 6이 자주 사용되며 종종 함께 사용됩니다.) IO가 높은 데이터베이스의 경우 HDD는 매우 의도적으로 설계되지 않는 한 일반적으로 충분하지 않습니다 . 데이터베이스 급 IO를위한 SLC 쓰기 집약적 SSD가 필요합니다.

답변

HDD는 여전히 선호

그렇습니까? 솔직해야할지 모르겠습니다.

HDD는 현재 합리적인 가격으로 큰 크기로 제공되므로 부인할 수 없으며 사람들은 SSD보다 더 긴 데이터 보존을 위해 사람들을 신뢰한다고 생각합니다. 또한 SSD가 죽으면 한꺼번에 완전히 죽는 반면 HDD는 더 예측 가능한 방식으로 죽어 필요할 경우 먼저 더 많은 데이터를 얻을 수 있습니다.

그러나 그렇지 않으면 SSD가 대부분의 사용을 향한 길입니다. 부트 페어를 원합니다 .R1의 두 500GB SATA는 지구 비용이 들지 않습니다 .DB 사용의 경우 실제로 로그를 사용하는 한 SSD를 능가 할 수 없습니다 어쨌든 높은 내구성 모델). 백업의 경우, 예를 들어 작년 초이 요구 사항으로 10TB HDD 4,000 대 이상을 구입 한 매우 큰 데이터 세트와 동일한 대용량 7.2k HDD를 사용할 수 있지만 그렇지 않으면 SSD가 나아갈 것입니다.


답변

대화 형 사용, 데이터베이스, 온라인 등 모든 것을위한 견고한 상태. 저렴한 콜드 스토리지로 스핀들은 냉랭한 아카이브 나 자주 액세스하지 않는 데이터에만 사용됩니다. 특히 백업 전 준비 영역의 HDD는 테이프에 보관됩니다.

핫 대 콜드에 대한 다양한 미디어 유형도 일부 다양성에 도움이됩니다. 온라인 및 백업 데이터를 모두 제거하면 SSD 컨트롤러 브랜드의 데이터 손실 결함이 훨씬 더 심각합니다. 그러나 스핀들과 테이프는 저렴하기 때문에 위험을 감수해야하는 이유는 무엇입니까?

어레이가 중복되고 백업 상태를 유지하는 한 특정 장치의 장애 모드는 중요하지 않습니다. 일반적으로 절차는 드라이브를 고장 증상으로 교체하는 것입니다. 치명적인 오류가 생산 서비스에 영향을 미치지 않는 테스트 시스템에서 수리를 실험 해보십시오.

파일 시스템은 개인 취향의 문제입니다. SSD에 최적화 된 파일 시스템이 있지만 알고 있고 복구 할 수있는 것이 더 중요 할 수 있습니다.


답변

SSD의 가장 큰 장점은 속도와 안정성이지만, 작은 비밀 중 하나는 SSD의 제한된 쓰기 횟수입니다. 데이터베이스 나 이메일 서버와 같이 하드 드라이브 쓰기 작업이 많은 서버를 구축하는 경우 내구성이 높은 더 비싼 SSD가 필요합니다.

NAND 플래시는 3 가지 유형이 있습니다

  • TLC
  • MLC
  • SLC

TLC는 주로 쓰기주기가 거의없는 웹 서버 또는 보관 서버를 위해 설계되었습니다. MLC는 저용량 데이터베이스 서버와 같이 읽기 및 쓰기주기가 혼합 된 서버를위한 것입니다. SLC는 대용량 데이터베이스 서버와 같이 읽기 / 쓰기주기가 많은 서버를 위해 설계되었습니다.

SSD와 HDD의 주요 동인은 애플리케이션과 예산입니다. 완벽한 세상에서, SLC SSD 하드 드라이브는 표준 HDD를 쓸모 없게 만들지 만 아직 우리는 아직 없습니다.


답변

HDD가 여전히 선호되지만 왜 그럴까요?

대화하는 사람, 배경 (관리, IT, 판매 등) 및 토론과 관련된 서버 유형에 따라 다릅니다. HDD는 일반적으로 바이트 당 가격이 저렴하지만 더 많은 전력을 사용하며 거의 항상 작업 부하에 따라 속도가 느립니다.

거의 항상 비용과 주어진 양의 서버에 얼마나 많은 스토리지를 수용 할 수 있는지가 결정됩니다. 단일 SSD로 5 디스크 RAID 어레이의 성능을 얻을 수 있다면 SSD는 훨씬 저렴하고 전력의 일부를 사용하지만 스토리지의 1/10도 얻을 수 있습니다.

활성 스토리지에 어떤 것이 더 좋습니까?

이곳은 복잡해지고, 많은 사람들이 합병증을 건너 뛰고 그들이 알고있는 HDD를 사용하는 이유입니다.

SSD는 셀에 쓸 수있는 데이터 양에 제한이있는 다른 등급으로 제공되며 이는 호스트가 기록한 데이터의 양과 다릅니다. 소량의 데이터를 쓰면 셀에 많은 양을 쓰게되는데이를 쓰기 증폭이라고하며 내구성이 낮은 드라이브를 빠르게 죽일 수 있습니다.

SSD 셀은 저장할 수있는 비트 수로 명명되며 n- 비트를 저장하려면 셀당 2 ^ n 전압 레벨이 필요합니다. TLC (트리플 비트)에는 해당 비트를 처리하기 위해 8 개의 전압 레벨이 필요합니다. 일반적으로 셀당 비트 레벨을 증가시킬 때마다 셀 내구성이 3-10 배 감소합니다. 예를 들어 , SLC 드라이브는 셀이 죽기 전에 모든 셀을 100000 번, 엔터프라이즈 eMLC 30000 번, MLC 10000, TLC 5000, QLC 1000을 쓸 수 있습니다.

분석가 Jim Handy가 인용 한 것처럼 SSD 셀 기술, 개선 된 리소그래피 및 3D NAND는 기존 2D NAND보다 밀도와 성능을 향상시키는 세대 별 개선 기능이 있습니다 .

SSD는 실제로 주소가 지정된 셀에 직접 쓰지 않고 셀 블록에 씁니다. 이러한 방식으로 블록의 셀 쓰기 양이보다 일정하게 유지되고 셀이 허용 오차 범위를 벗어나면 전체 블록이 불량으로 표시되고 데이터가 새 블록으로 이동됩니다. SSD 내구성은 셀 유형, 사용 가능한 스페어 블록 수, 오류 수정을위한 오버 헤드 양, 드라이브가 캐싱 및 알고리즘을 사용하여 쓰기 증폭을 줄이는 방법을 기반으로합니다. 제조업체가 불량으로 표시하기로 선택한 허용 오차도 작용합니다. 엔터프라이즈 드라이브는 여전히 완전한 기능을 수행하지만 소비자 용 드라이브보다 먼저 불량 블록을 표시합니다.

엔터프라이즈 급 “고속 쓰기”SSD는 SLC 또는 eMLC 셀을 기반으로하며 많은 양의 스페어 블록이 있으며 일반적으로 커패시터가있는 대용량 캐시를 사용하여 정전시 캐시가 디스크로 플러시 될 수 있도록합니다.

또한 빠른 액세스 시간이 필요한 파일 서버와 같은 “고독”응용 프로그램에 대한 내구성이 훨씬 낮은 드라이브가 있으며, 셀 유형이 다르거 나 여유 공간이 적고 내구성이 떨어지는 가격으로 바이트 당 비용이 저렴합니다. “높은 쓰기”드라이브의 내구성의 5 % 만 가질 수 있지만 올바르게 사용할 때 필요하지 않습니다.

예를 들어 디스크가 항상 활성화되어있는 데이터베이스의 경우?

내 데이터베이스는 작으며 간헐적 읽기 액세스의 95 %이며 대부분 RAM에 캐시되어 있으며 SSD만큼 HDD에서 거의 빠릅니다. 크기가 크면 시스템에 충분한 RAM이없고 SSD가 액세스 시간을 크게 변화시키기 시작합니다.

SSD는 또한 백업 및 복구 순서를 훨씬 빠르게합니다. 내 DB는 백업에서 약 10 분 안에 느린 SSD로, 또는 약 11 초 동안 정말 빠른 것으로 복원 했다면 HDD 로의 백업은 약 25 분이되었을 것입니다. 그것은 적어도 2 배의 크기이며 작업량에 따라 큰 차이를 만들 수 있습니다. 문자 그대로 1 일에 비용을 지불 할 수 있습니다.

소량의 쓰기 작업이 많은 데이터베이스는 몇 시간 안에 소비자 등급 TLC 드라이브를 살해 할 수 있습니다.

그리고 SSD는 서버에 정말 유용합니까?

응용 프로그램에 올바른 드라이브 유형과 등급을 선택하면 잘못하면 재앙이 될 수 있습니다.

내 서버는 여러 데이터베이스, 높은 읽기 네트워크 스토리지, 높은 쓰기 보안 푸티 지 스토리지, 혼합 된 읽기 쓰기 파일 스토리지 및 클라이언트 백업을 실행합니다. 서버에는 대량 네트워크 스토리지 및 NVR 용 RAID-6 HDD 어레이, MySQL 용 단일 고성능 MLC SSD 및 클라이언트 및 데이터베이스 백업 및 빠른 액세스 네트워크 스토리지 용 RAID-5의 3 개의 소비자 TLC 드라이브가 있습니다.

SSD RAID의 쓰기 속도는 HDD RAID와 거의 같은 속도이지만 SSD RAID에서 임의 액세스 읽기 속도는 10 배 이상 빠릅니다. 다시 한번 이것은 소비자 TLC SSD이지만 순차 쓰기 속도는 기가비트 LAN보다 약 3 배 빠르기 때문에 결코 오버로드되지 않으며 시스템이 원격으로 액세스 될 때 로컬 백업을 수행하는 경우 많은 오버 헤드가 있습니다.

대부분의 SSD는 또한 즉각적인 보안 지우기 (ISE)를 제공합니다. 이 기능은 해당 기능이없는 HDD의 경우 몇 시간 또는 며칠에 비해 몇 초 만에 데이터를 지울 수 있으며, 소수의 엔터프라이즈 급 HDD 만 ISE를 제공하는 경향이 있지만 더 일반적입니다. 드라이브를 폐기하거나 용도를 바꾸는 경우 매우 유용합니다.

작성하는 가장 좋은 솔루션 (파일 시스템)은 무엇입니까?

데이터 유형 및 원하는 파일 시스템 기능 유형에 따라 다릅니다. EXT4 및 BTRFS 만 사용하고 있습니다 (스냅 샷 및 체크섬 필요). 파일 시스템 오버 헤드는 사용 가능한 공간을 줄이고 SSD 수명을 약간 줄일 수 있으며 BTRFS는 체크섬 및 기타 기능에 대한 오버 헤드가 높으며 스냅 샷은 많은 공간을 사용합니다.

기계적 결함이있는 경우 수리 할 수있는 방법이 없습니까?

드라이브 유형에 관계없이 죽은 드라이브에서 데이터 복구를 수행 한 적이 있습니까? 비용이 많이들 수 있습니다 . 계층화 된 백업, 주 스토리지의 RAID, 다른 장치 또는 머신에서 로컬로 버전 화 된 백업을 수행 한 다음 오프 사이트 또는 클라우드에 동기화하는 것이 좋습니다. 1TB의 클라우드 스토리지는 한 달에 5 달러이며, HDD의 데이터 복구는 2 그랜드 비용이 들고, 죽은 SSD는 복구가 불가능할 수 있습니다. 백업 만하고 복구를 잊어 버리십시오.


답변

양자 모두.

쓰기로드로 인해 SSD가 죽는 것을 아직 보지 못했습니다 (이 경우 읽기 전용이되어야 함). 과열 및 펌웨어 버그를 포함하되 이에 국한되지 않는 다른 이유로 죽지 않는다는 것은 아닙니다.

그리고 나는 죽은 HDD를 보았다. 실제로는 훨씬 더 많습니다.

신뢰성에 대해 너무 많은.

경우에 따라 혼합 RAID1 (HDD + SSD)을 만드는 것이 합리적입니다. 이 방법으로 두 모드와 관련된 장애 모드를 방지하고 SSD 읽기 성능을 유지할 수 있습니다.

다른 경우에는 파일 시스템 저널에만 SSD를 사용하는 것이 합리적입니다. 쓰기의 절반과 탐색의 절반을 저장하기 때문에 HDD의 쓰기 성능이 2 배가되고 일반적으로 남용 된 SSD를 사용하더라도 위험이 없습니다. 죽는다. Ext4는 저널을 꽤 우아하게 잃습니다.


답변

고려해야 할 두 가지 주요 요소는 다음과 같습니다.

  • 성능 (액세스 시간 및 처리량)
  • 기가 바이트 당 비용

SSD는 성능면에서 HDD를 물 밖으로 날려 버립니다. 높은 처리량과 낮은 액세스 시간이 필요한 경우 SSD를 능가하는 것은 없습니다 .

그러나 SSD의 기가 바이트 당 비용은 HDD보다 훨씬 높습니다. 많은 저장 공간이 필요하고 처리량 또는 액세스 시간이 덜 중요하다면 HDD를 능가하는 것은 없습니다.

처리량 (대역폭) 수치는 적절한 RAID 수준으로 도움이 될 수 있습니다 (대기열이 문제가 될 정도로 백 로그 된 경우가 아니라면 액세스 시간이 많지 않음).

소규모 캐싱의 읽기 액세스 시간 수치는 적절한 캐싱 (예 : 서버에 더 많은 RAM을 넣음)으로 도움이 될 수 있습니다. 컨트롤러 또는 디스크의 배터리 백업 RAM 캐시를 제외하고 쓰기에는 도움이되지 않습니다.

따라서 모두 실제로 사용 사례에 따라 다릅니다. 많은 용량이 필요하지만 액세스 시간이나 대역폭에 관심이없는 백업 / 아카이브 서버는 HDD를 사용하는 것이 좋습니다. 트래픽이 많은 데이터베이스 서버는 SSD를 선호합니다. 사이에 … 의존합니다.

상황이 어떻든

  • 백업이 필요합니다. 그것은의 문제가 아니다 경우 드라이브 (SSD 또는 HDD)가 실패합니다, 그것은의 문제이다 .

  • 서버에 어떤 종류의 중요성이 있다면 가동 시간을 유지하고 데이터를 보호하기 위해 어떤 종류의 RAID를 원합니다. RAID는 일반적으로 성능에 도움이됩니다. 이는 요구 사항 (성능 / 비용 타협)에 따라 크게 달라집니다.