솔리드-스테이트 드라이브 (Solid-State Drive, 줄여서 SSD)는 전형적으로 플래시 메모리(flash memory)를 사용하고, 컴퓨터 저장의 계층에서 이차 저장(secondary storage)으로 기능하는, 지속적으로(persistently) 데이터를 저장하기 위해 집적된 회로 어셈블리를 사용하는 솔리드-스테이트 저장(solid-state storage) 장치입니다. 그것은, 비록 SSD가 하드 디스크 ("HDD") 또는 플로피 디스크에서 사용되는 물리적 회전 디스크(disks)와 이동식 읽기/쓰기 헤드(read-write heads)가 없을지라도, 때때로 솔리드-스테이트 장치 또는 솔리드-스테이트 디스크로 역시 불립니다.
전자-기계식 드라이브와 비교하여, SSD는 전형적으로 물리적 충격에 더 강하고, 조용하게 실행되고, 액세스 시간이 더 빠르고 지연 시간이 더 짧습니다. SSD는 반도체 셀에 데이터를 저장합니다. 2019년부터 셀은 1과 4 사이의 비트의 데이터를 포함할 수 있습니다. SSD 저장 장치는 각 셀에 저장된 비트의 숫자에 따라 그들의 속성이 달라지며, 단일-비트 셀 ("SLC")은 일반적으로 2-비트 및 3-비트 셀 ("MLC" 및 "TLC")에 비해 가장 신뢰할 수 있고, 내구성이 높고, 빠르고, 값비싼 유형이고, 마지막으로 쿼드-비트 셀 ("QLC")은 그러한 극단적인 속성이 요구되지 않고 4개 중 가장 저렴한 소비자 장치에 사용됩니다. 게다가, 3D XPoint 메모리 (Intel에서 Optane 브랜드로 판매)는 셀에 전하를 저장하는 대신 셀의 전기 저항을 변경함으로써 데이터를 저장하고, RAM으로 만들어진 SSD는 전원이 공급된 후에도 데이터가 지속될 때 고속으로 사용할 수 있거나, 보통의 전원 공급이 사용될 수 없을 때 데이터를 유지하기 위해 배터리 전원을 사용할 수 있습니다. 애플의 Fusion Drive와 같은 하이브리드 드라이브 또는 솔리드-스테이트 하이브리드 드라이브 (SSHD)는 자주-액세스된 데이터의 성능을 향상시키기 위해 플래시 메모리와 HDD 둘 다를 사용하여 같은 장치에서 SSD와 HDD의 특색을 결합합니다.
NAND 플래시 기반 SSD는 만약 전원없이 장기간 방치하면 시간이 지남에 따라 천천히 충전이 누출됩니다. 이것은 전형적으로 (30°C에서 저장되면) 보관 기간 1년에서 (25°C에서) 2년 후에 데이터 손실을 시작하는 (그들의 내구성 등급을 초과한) 낡은 드라이브의 원인이 됩니다; 새 드라이브에 대해 더 오래 걸립니다. 그러므로, SSD는 보관 저장소에 적합하지 않습니다. 3D XPoint는 이 규칙의 예외일 수 있지만, 어쨌든 그것은 알려지지-않은 장기 데이터-보존 특성을 갖는 비교적 새로운 기술입니다.
SSD는 전통적인 하드 디스크 드라이브 (HDD) 인터페이스와 형식 규격, 또는 SSD에서 플래시 메모리의 특정 이점을 활용하는 더 새로운 인터페이스와 형식 규격을 사용할 수 있습니다. 전통적인 인터페이스 (예를 들어, SATA와 SAS) 및 표준 HDD 형식 규격은 그러한 SSD를 컴퓨터와 다른 장치에서 HDD에 대한 드롭-인 교체로 사용하는 것을 허용합니다. mSATA, M.2, U.2, NF1, XFMEXPRESS 및 EDSFF (이전의 Ruler SSD)와 같은 더 새로운 형식 규격과 PCI Express를 지나서 NVMe와 같은 더 빠른 인터페이스는 HDD 성능보다 성능을 더욱 향상시킬 수 있습니다.
Development and history
Early SSDs using RAM and similar technology
하드 드라이브 인터페이스 (예를 들어 정의된 것처럼 SSD)와 호환되는 초기—처음이 아니라면—반도체 저장 장치는 1978 StorageTek STC 4305였습니다. STC 4305, IBM 2305 고정 헤드 디스크 드라이브의 플러그-호환 대체품은 스토리지에 charge-coupled devices (CCD)를 사용했었고 결과적으로 IBM 제품보다 약 절반 가격 (45MB 용량에 대해 $400,000)으로 7배 더 빠른 것으로 보고되었습니다. 그것은 나중에 DRAM으로 전환했습니다. StorageTek SSD 이전에는 많은 DRAM 및 코어 (예를 들어, DATARAM BULK Core, 1976) 제품이 HDD의 대안으로 판매되었지만 이들 제품은 전형적으로 메모리 인터페이스를 가졌었고 정의된 것처럼 SSD는 아니었습니다.
1980년대 후반에, Zitel은 다른 것들 중에서 UNIVAC 및 Perkin-Elmer에 의한 시스템에서 사용하기 위해, 상표명 "RAMDisk" 아래에서, DRAM 기반 SSD 제품군을 제공했습니다.
Flash-based SSDs
Improvement of SSD characteristics over time | |||
Parameter | Started with (1991) |
Developed to (2020) |
Improvement |
Capacity | 20 megabytes | ∞ | 5-million-to-one |
Price | US$50,000 per gigabyte | US$0 |
플래시 기반 SSD에 대해 기반, 플래시 메모리는 1980년 도시바에서 Fujio Masuoka에 의해 발명되었었고 1987년에 도시바에 의해 상용화했습니다. 샌디스크 법인(SanDisk Corporation) (당시에 샌디스크)의 설립자 Eli Harari 및 Sanjay Mehrotra는, Robert D. Norman과 함께, 플래시 메모리의 잠재력을 하드 드라이브의 대안으로 보았었고, 1989년에 플래시-기반 SSD에 대한 특허를 신청했습니다. 최초의 상용 플래시-기반 SSD는 1991년에 샌디스크에서 출시되었습니다. 그것은 PCMCIA 구성에서 20MB SSD였었고, OEM에서 약 1,000 달러에 판매되었었고, IBM에서 ThinkPad 랩탑에 사용했습니다. 1998년에서, 샌디스크는 PATA 인터페이스를 갖는 2½ 및 3½ 형식 규격에서 SSD를 도입했습니다.
1995년에서, STEC, Inc.는 소비자 전자 장치에 대해 플래시 메모리 사업에 뛰어들었습니다.
1995년에서, M-Systems은 군사 및 항공 우주 산업에 대해, 마찬가지로 다른 미션-크리티컬 응용에 대해 HDD 대체품으로 플래시-기반 솔리드-스테이트 드라이브를 도입했습니다. 이들 응용은 극심한 충격, 진동 및 온도 범위를 견딜 수 있는 SSD의 기능을 요구합니다.
1999년에서, BiTMICRO는 18GB 3.5-인치 SSD를 포함하여 플래시-기반 SSD에 대한 여러 가지 소개 및 발표를 했습니다. 2007년에서, Fusion-io는 최대 320GB 용량을 갖는 단일 카드에서 100,000 초당 입/출력 연산 (IOPS) 성능을 제공하는 PCIe-기반 솔리드 스테이트 드라이브를 발표했습니다.
Cebit 2009에서, OCZ Technology는 PCI Express ×8 인터페이스를 사용하여 1TB 플래시 SSD를 시연했습니다. 그것은 초당 0.654 기가바이트 (GB/s)의 최대 쓰기 속력과 0.712 GB/s의 최대 읽기 속력을 달성했습니다. 2009년 12월에서, Micron Technology는 초당 6 기가비트 (Gbit/s) SATA 인터페이스를 사용하여 SSD를 발표했습니다.
2016년에서, Seagate는 16-레인 PCIe 3.0 SSD에서 10 GB/S 순차 읽기 및 쓰기 속력을 시연했었고 3.5-인치 형식 규격에서 60 TB SSD를 시연했습니다. 삼성은 역시 2.5-인치 형식 규격을 사용하지만, 3.5-인치 드라이브의 두께를 갖는 SAS 인터페이스를 사용하여 US$10,000의 가격을 가진 15.36TB SSD를 출시했습니다. 이것은 상업적으로 사용-가능한 SSD가 가장 큰 현재 사용-가능한 HDD보다 더 많은 용량을 가진 첫 번째 시기였습니다.
2018년에서, 삼성과 Toshiba 둘 다는 같은 2.5-인치 형식 규격을 사용하지만 SAS 인터페이스를 사용하여 3.5-인치 드라이브 두께를 가진 30.72 TB SSD를 출시했습니다. Nimbus Data는 SATA 인터페이스를 사용하여 100 TB 드라이브를 발표하고 출시한 것으로 알려졌으며, 용량 HDD는 2025년까지 도달할 것으로 예상되지 않습니다. 삼성은 읽기 속도 3.5 GB/s 및 쓰기 속도 3.3 GB/s를 제공하는 M.2 NVMe SSD를 출시했습니다. 100TB SSD의 새로운 버전은 2020년에 40,000 달러의 가격에 출시되었으며, 50 TB 버전의 가격은 12,500 달러입니다.
2019년에서, Gigabyte Technology는 Computex 2019에서 15.0 GB/s 순차 읽기 및 15.2 GB/s 순차 쓰기 속도를 제공하는 8 TB 16-레인 PCIe 4.0 SSD를 시연했습니다. 그것은, 새로운, 고속 SSD를 고온에서 실행하기 때문에 팬을 포함했었습니다. 역시 2019년에서, PCIe 4.0 인터페이스를 사용하는 NVMe M.2 SSD가 출시되었습니다. 이들 SSD는 최대 5.0 GB/s의 읽기 속도 및 최대 4.4 GB/s의 쓰기 속도를 가집니다. 고속 작동으로 인해, 이들 SSD는 큰 방열판을 사용하고, 만약 그것들이 충분한 냉각 공기-흐름을 받지 못하면 전형적으로 최대 속도에서 대략 15분 동안 연속 작동한 후 열적으로 트라들링될 것입니다. 삼성은 역시 8 GB/s의 순차 읽기 및 쓰기 속도와 150만 IOPS를 지원하는 SSD를 출시하여, 손상된 칩에서 손상되지 않은 칩으로 데이터를 이동할 수 있어, SSD가 더 낮은 용량에서도 정상적으로 계속 작동할 수 있도록 합니다.
Enterprise flash drives
엔터프라이즈 플래시 드라이브 (EFDs)는 높은 I/O 성능 (IOPS), 안정성, 에너지 효율성 및 보다 최근에는 일관된 성능을 요구하는 응용에 대해 설계되었습니다. 대부분의 경우에서, EFD는 전형적으로 노트북 컴퓨터에서 사용되는 SSD에 비교하여, 더 높은 사양의 집합을 가진 SSD입니다. 그 용어는 2008년 1월 EMC에서, 이들 더 높은 표준을 충족하는 제품을 제공할 SSD 제조업체를 식별하는 그들을 돕기 위해 처음 사용되었습니다. EFD의 정의를 제어하는 표준 기관이 없으므로, 임의의 SSD 제조업체는 사실 제품이 임의의 특정 요구 사항을 실제로 충족하지 않을 수 있을 때, EFD를 생산한다고 주장할 수 있습니다.
예제는 2012년 4분기에 도입된 드라이브의 Intel DC S3700 시리즈이며, 이것은 일관된 성능을 달성하는 데 중점을 두고 있습니다. 이전에는 그다지 주목받지 못했지만 인텔이 주장했던 그 영역은 엔터프라이즈 시장에서 중요해졌습니다. 특히, 인텔은, 안정적인 상태에서, S3700 드라이브가 그들의 IOPS를 10–15% 이상 변화시키지 않고, 모든 4KB 임의 I/O의 99.9%가 500µs 미만으로 서비스된다고 주장합니다.
또 다른 예제는, 2016년에 발표된, Toshiba PX02SS 엔터프라이즈 SSD 시리즈이며, 이것은 쓰기 캐싱, I/O 가속화 및 온라인 트랜잭션 처리 (OLTP)와 같은 쓰기-집약적 응용에서 높은 내구성을 요구하는 서버 및 스토리지 플랫폼에서 사용에 대해 최적화되었습니다. PX02SS 시리즈는 12Gbit/s SAS 인터페이스를 사용하며, MLC NAND 플래시 메모리를 특징으로 하고 최대 42,000 IOPS의 임의 쓰기 속도, 최대 130,000 IOPS의 임의 읽기 속도 및 일별 30 드라이브 쓰기 (DWPD)의 내구성 등급을 달성합니다.
3D XPoint 기반 SSD는 낸드-플래시보다 더 높은 랜덤 (더 높은 IOPS)을 갖지만 더 낮은 순차적 읽기/쓰기 속도를 가집니다. 그것들은 최대 250만 IOPS를 가질 수 있습니다.
Drives using other persistent memory technologies
2017년에서, 3D Xpoint 메모리를 갖는 첫 번째 제품이 Intel의 Optane 브랜드로 출시되었습니다. 3D Xpoint는 낸드 플래시와 완전히 다르고 다른 원리를 사용하여 데이터를 저장합니다.
Architecture and function
SSD의 핵심 부품은 데이터를 저장하기 위한 컨트롤러와 메모리입니다. SSD에서 주요 메모리 부품은 전통적으로 DRAM 휘발성 메모리였지만, 2009년 이래로 그것은 보다 공통적으로 낸드 플래시 비-휘발성 메모리입니다.
Controller
모든 각 SSD는 낸드 메모리 부품을 호스트 컴퓨터에 연결하는 전자-장치와 통합된 컨트롤러를 포함합니다. 컨트롤러는 펌웨어 수준 코드를 실행하는 임베디드 프로세서이고 SSD 성능의 가장 중요한 요소 중 하나입니다. 컨트롤러에 의해 수행되는 일부 기능은 다음을 포함합니다:
- 불량 블록(Bad block) 매핑
- 읽기 및 쓰기 캐싱
- 암호화
- 암호화-찢기
- 오류-수정 코드 (ECC)를 통한 오류 감지 및 수정
- 쓰레기 수집(Garbage collection)
- 읽기 스크러빙(Read scrubbing) 및 읽기 방해 관리
- 마모 수준화
SSD의 성능은 장치에서 사용되는 병렬 낸드 플래시 칩의 숫자와 함께 스케일할 수 있습니다. 단일 낸드 칩은 좁은 (8/16 비트) 비동기 I/O 인터페이스와 기본 I/O 작업의 추가적인 높은 지연 시간으로 인해 상대적으로 느립니다 (전형적으로 SLC NAND에 대해 4KiB 페이지를 읽기 시 배열에서 I/O 버퍼로 가져오기 위해 ~25 μs, 4 KiB 페이지를 IO 버퍼에서 배열로 커밋하기 위해 ~250 μs, 256 KiB 블록을 지우기 위해 ~2 ms의 지연 시간이 있습니다). 여러 낸드 장치가 SSD 내부에서 병렬로 작동할 때, 대역폭이 스케일되고, 높은 지연-시간은, 충분한 두드러진 작업이 대기 중이고 부하가 장치 사이에 균등하게 분산되는 한, 숨겨질 수 있습니다.
마이크론과 인텔은 처음에 (RAID 0와 비슷한) 데이터 스트라이핑을 구현하고 그들의 아키텍처에 인터리빙(interleaving)함으로써 더 빠른 SSD를 만들었습니다. 이것은 2009년에 SATA 3Gbit/s 인터페이스를 갖는 250 MB/s의 유효한 읽기/쓰기 속도를 갖는 초-고속 SSD의 창작을 할 수 있게 합니다. 2년 후에, SandForce는 이 병렬 플래시 연결을 계속 활용하여, 500 MB/s 읽기/쓰기 속도를 지원하는 소비자-등급 SATA 6 Gbit/s SSD 컨트롤러를 출시했습니다. SandForce 컨트롤러는 데이터를 플래시 메모리로 보내기 전에 그것을 압축합니다. 이 과정은 데이터의 압축-가능성에 따라 쓰기를 줄이고 더 높은 논리적 처리량을 초래했을 것입니다.
Wear leveling
만약 특정 블록이 임의의 다른 블록에 쓰는 것 없이 반복적으로 프로그래밍되고 지워지면, 해당 블록은 모든 다른 블록 전에 마모될 것입니다 — 그것에 의하여 SSD의 수명이 너무 일찍 끝납니다. 이러한 이유로, SSD 컨트롤러는 마모 수준화라는 기술을 SSD에서 모든 플래시 블록에 가능한 한 균등하게 쓰기를 분산하기 위해 사용합니다.
완벽한 시나리오에서, 이것은 모든 각 블록을 그것의 최대 수명으로 쓰이도록 활성화되므로 그것들은 동시에 모두 고장납니다. 쓰기를 균등하게 분산하는 과정은 이전에 쓰였지만 변경되지 않은 데이터 (콜드 데이터)를 이동하므로, 더 자주 변경되는 데이터 (핫 데이터)가 해당 블록에 쓰일 수 있습니다. 데이터 재배치는 쓰기 증폭을 증가시키고 플래시 메모리의 마모를 증가시킵니다. 설계자는 이 두 가지를 모두 최소화하려고 노력합니다.
Memory
Flash memory
Comparison of architectures | ||
Comparison characteristics |
MLC : SLC |
NAND : NOR |
Persistence ratio | 1 : 10 | 1 : 10 |
Sequential write ratio | 1 : 3 | 1 : 4 |
Sequential read ratio | 1 : 1 | 1 : 5 |
Price ratio | 1 : 1.3 | 1 : 0.7 |
대부분의 SSD 제조업체는 DRAM에 비해 비용이 저렴하고 지속적인 전원 공급 없이 데이터를 유지하여, 갑작스러운 정전에도 데이터 지속성을 보장하기 때문에 SSD 구성에 비-휘발성 낸드 플래시 메모리를 사용합니다. 플래시 메모리 SSD는 처음에는 DRAM 솔루션보다 느렸었고, 일부 초기 설계는 계속 사용된 후 HDD보다 훨씬 더 느렸습니다. 이 문제는 2009년 이후에 출시된 컨트롤러에 의해 해결되었습니다.
플래시-기반 SSD는 비-휘발성 플로팅-게이트 메모리 셀을 포함하는 금속 산화막 반도체(metal-oxide-semiconductor, MOS) 집적 회로 칩에 데이터를 저장합니다. 플래시 메모리-기반 솔루션은 전형적으로 표준 디스크 드라이브 형식 규격 (1.8-, 2.5-. 및 3.5-인치)로 패키징되지만, 플래시 메모리의 작은 크기에 의해 가능하게 만들어진, M.2 형식 규격과 같은 더 작은 보다 간결한 형식 규격에서 역시 패키징됩니다.
저가형 드라이브는 보통 삼중-레벨 셀 (TLC) 또는 다중-레벨 셀 (MLC) 플래시 메모리를 사용하는데, 이것은 단일-레벨 셀 (SLC) 플래시 메모리보다 더 느리고 신뢰성이 떨어집니다. 이것은 인터리빙, 쓰기 알고리듬에 대한 변경, 및 마모-수준화 알고리듬이 작동할 수 있는 더 높은 오버-프로비저닝 (더 많은 초과 용량)과 같은, SSD의 내부 설계 구조에 의해 완화되거나 심지어 역전될 수 있습니다.
셀의 층이 수직으로 쌓이는 V-NAND 기술에 의존하는 솔리드-스테이트 드라이브가 도입되어 왔습니다.
DRAM
DRAM과 같은 휘발성 메모리를 기반으로 하는 SSD는 일반적으로 10 마이크로-초 미만의 매우 빠른 데이터 액세스에 의해 특징지어지고, 플래시 SSD 또는 전통적인 HDD의 지연 시간으로 인해 지연되는 응용을 가속화하기 위해 주로 사용됩니다.
DRAM-기반 SSD는 보통 내부 배터리 또는 외부 AC/DC 어댑터 및 백업 스토리지 시스템을 외부 소스에서 드라이브에 전원이 공급되지 않는 동안 데이터 지속성을 보장하기 위해 통합합니다. 만약 정전 시, 배터리는 모든 정보가 랜덤 액세스 메모리(Random Access Memory, 줄여서 RAM)에서 백업 스토리지로 복사되는 동안 전원을 공급합니다. 전원이 복구될 때, 그 정보가 백업 스토리지에서 RAM으로 다시 복사되고, SSD는 정상 작동을 재개합니다 (최신 운영 시스템에서 사용되는 하이버네이트 기능과 유사합니다).
이 유형의 SSD는 보통 일반 PC 및 서버에 사용되는 같은 유형의 DRAM 모듈을 장착되어 있으며, 이것은 교환되고 더 큰 모듈로 교체될 수 있습니다. i-RAM, HyperOs HyperDrive, DDRdrive X1, 등과 같은, 일부 DRAM SSD 제조업체는 DRAM 칩을 드라이브에 직접 납땜하고, ZeusRAM, Aeon Drive 등과 같은 칩을 교체할 의도가 없습니다.
원격ㅡ 간접 메모리-액세스 디스크 (RIndMA 디스크)는 RAM-기반 SSD처럼 작동하기 위해 빠른 네트워크 또는 (직접) Infiniband 연결을 갖는 보조 컴퓨터를 사용하지만, 2009년에 이미 사용-가능한 새롭고, 더 빠른, 플래시-메모리 기반 SSD는 이 옵션을 비용 효율적으로 만들지 않습니다.
DRAM 가격이 계속 하락하고 있지만, 플래시 메모리 가격은 더욱 빠르게 하락합니다. "플래시가 DRAM보다 저렴해진다"는 역전 점은 대략 2004년에 발생했습니다.
3D XPoint
2015년에서, 인텔과 마이크론은 새로운 비-휘발성 메모리 기술로 3D XPoint를 발표했습니다. 인텔은 2017년 3월에서 데이터 센터 제품 – Intel® Optane™ SSD DC P4800X 시리즈를 시작하고, 2017년 10월에서 클라이언트 버전 – Intel® Optane™ SSD 900P 시리즈를 뒤따르는 최초의 3D XPoint-기반 드라이브를 출시했습니다 (Intel® Optane™ SSD로 브랜드화되었습니다). 제품 둘 다는 낸드-기반 SSD보다 더 빠르게 동작하고 더 높은 내구성을 가지지만, 넓이의 밀도는 칩당 128 기가비트로 비슷합니다. 비트당 가격에 대해, 3D XPoint가 NAND보다 더 비싸지만 DRAM보다 더 저렴합니다.
Other
NVDIMM 또는 Hyper DIMM 장치라고 불리는, 일부 SSD는 DRAM과 플래시 메모리 둘 다를 사용합니다. 전원이 꺼졌을 때, SSD는 그것의 DRAM으로부터 플래시로 모든 데이터를 복사합니다; 전원이 다시 들어올 때, SSD는 그것의 플래시에서 DRAM으로 모든 데이터를 복사합니다. 다소 유사한 방식으로, 일부 SSD는 실제로 DIMM 모듈에 대해 설계된 형식 규격과 버스를 사용하지만, 오직 플래시 메모리를 사용하고 그것을 마치 DRAM인 것처럼 보이게 만듭니다. 그러한 SSD는 보통 ULLtraDIMM 장치로 알려져 있습니다.
하이브리드 드라이브 또는 솔리드-스테이트 하이브리드 드라이브 (SSHD)로 알려진 드라이브는 회전 디스크와 플래시 메모리의 하이브리드를 사용합니다. 일부 SSD는 데이터 저장을 위해 자기-저항 랜덤 액세스 메모리 (MRAM)를 사용합니다.
Cache or buffer
플래시-기반 SSD는 전형적으로 하드 디스크 드라이브에서 버퍼와 유사한, 소량의 DRAM을 휘발성 캐시로 사용합니다. 블록 배치와 마모 수준화 데이터의 디렉토리는 드라이브가 작동하는 동안 역시 캐시에 보관됩니다. 한 SSD 컨트롤러 제조업체, SandForce는 설계에 외부 DRAM 캐시를 사용하지 않지만 여전히 높은 성능을 달성합니다. 그러한 외부 DRAM 제거는 전력 소비를 줄이고 SSD의 크기를 더욱 줄일 수 있습니다.
Battery or supercapacitor
고성능 SSD에서 또 다른 부품은 콘덴서 또는 배터리 형식이며, 이것은 데이터 무결성을 유지하기 위해 필요하므로 캐시에서 데이터는 전원이 끊겼을 때 드라이브로 플러시될 수 있습니다; 일부는 전력이 재개될 때까지 캐시에 데이터를 유지하기에 충분하게 길게 전력을 보유할 수 있습니다. MLC 플래시 메모리의 경우에서, 하위 페이지 손상이라고 불리는 문제는 상위 페이지를 프로그래밍하는 동안 MLC 플래시 메모리가 전원을 잃었을 때 발생할 수 있습니다. 그 결과는 이전에 쓰이고 안전하게 재개되는 데이터가 갑작스러운 정전의 사건에서 만약 그 메모리가 슈퍼커패시터에 의해 지원되지 않으면 손상될 수 있습니다. 이 문제는 SLC 플래시 메모리에서는 존재하지 않습니다.
대부분의 소비자-용 SSD는 내장 배터리 또는 콘덴서를 가지지 않습니다; 예외 중에는 Crucial M500 및 MX100 시리즈, Intel 320 시리즈, 및 더 비싼 Intel 710 및 730 시리즈가 있습니다. Intel DC S3700 시리즈와 같은 엔터프라이즈-급 SSD는 보통 배터리 또는 콘덴서를 가집니다.
Host interface
호스트 인터페이스는 물리적으로 SSD의 컨트롤러에서 관리되는 신호를 갖는 커넥터입니다. 그것은 대부분의 HDD에서 발견되는 인터페이스 중 하나입니다. 그것들은 다음을 포함합니다:
- Serial attached SCSI (SAS-3, 12.0 Gbit/s) – 일반적인 서버에서 발견됨
- Serial ATA 및 mSATA 변형 (SATA 3.0, 6.0 Gbit/s)
- PCI Express (PCIe 3.0 ×4, 31.5 Gbit/s)
- M.2 (6.0 Gbit/s for SATA 3.0 logical device interface, 31.5 Gbit/s for PCIe 3.0 ×4)
- U.2 (PCIe 3.0 ×4)
- Fibre Channel (128 Gbit/s) – 거의 독점적으로 서버에서 발견됨
- USB (10 Gbit/s)
- Parallel ATA (UDMA, 1064 Mbit/s) – 대부분 SATA에 의해 대체됨
- (Parallel) SCSI ( 40 Mbit/s- 2560 Mbit/s) – 일반적으로 서버에서 발견되며, 대부분 SAS에 의해 대체됩니다; 2004년에 도입된 마지막 SCSI-기반 SSD
SSD는 고급 호스트 컨트롤러 인터페이스 (AHCI) 및 NVM Express (NVMe)와 같은 다양한 논리적 장치 인터페이스를 지원합니다. 논리적 장치 인터페이스는 운영 시스템에 의해 SSD 및 호스트 버스 어댑터 (HBAs)와 통신하기 위해 사용되는 명령 집합을 정의합니다.
Configurations
임의의 장치의 크기와 모양은 해당 장치를 만들기 위해 사용되는 부품의 크기와 모양에 따라 크게 좌우됩니다. 전통적인 HDD 및 광학 드라이브는 회전하는 플래터 또는 광학 디스크를 중심으로 내부의 스핀들 모터와 함께 설계되었습니다. 만약 SSD가 다양한 상호-연결된 집적 회로 (IC)와 인터페이스 커넥터로 구성되어 있으면, 그것의 모양은 더 이상 회전하는 미디어 드라이브의 모양으로 제한되지 않습니다. 일부 솔리드 스테이트 스토리지 해결책은 내부에 수많은 SSD를 갖는 랙-마운트 형식 규격일 수도 있는 더 큰 섀시로 제공됩니다. 그것들은 모두 섀시 내부의 공통 버스에 연결되고 단일 커넥터로 상자 외부에 연결됩니다.
일반적인 컴퓨터 사용에 대해, 2.5-인치 형식 규격 (전형적으로 랩탑에서 볼 수 있음)이 가장 대중적입니다. 3.5-인치 하드 디스크 드라이브 슬롯을 갖는 데스크탑 컴퓨터에 대해, 간단한 어댑터 플레이트는 적당한 그러한 드라이브를 만들기 위해 사용될 수 있습니다. 다른 유형의 형식 규격은 엔터프라이즈 응용에서 보다 공통적입니다. SSD는 역시 애플 맥북 에어 (2010년 가을 모델부터 시작)에서와 같이 장치의 다른 회로에 완전히 통합될 수 있습니다. 2014년부터, mSATA 및 M.2 형식 규격은 주로 노트북에서 역시 인기를 얻었습니다.
Standard HDD form factors
현재 HDD 형식 규격을 사용하는 이점은 드라이브를 호스트 시스템에 마운트하고 연결하기 위해 이미 마련된 광범위한 인프라를 활용하는 것입니다. 이들 전통적인 형식 규격은 드라이브 케이스의 크기가 아니라 5.25-인치, 3.5-인치, 2.5-인치, 1.8-인치와 같은 회전 미디어의 크기로 알려져 있습니다.
Standard card form factors
울트라-북 또는 태블릿 컴퓨터와 같이 공간이 부족한 응용에 대해, 몇 가지 작은 형식 규격이 플래시-기반 SSD를 위해 표준화되었습니다.
PCI Express Mini Card 물리적 레이아웃을 사용하는 mSATA 형식 규격이 있습니다. 그것은 PCI Express Mini Card 인터페이스 사양과 전기적으로 호환되도록 남아 있지만, 같은 커넥터를 통해 SATA 호스트 제어기에 추가적인 연결을 요구합니다.
M.2 형식 규격은, 이전에 다음 세대 형식 규격 (NGFF)로 알려져 있으며, mSATA와 그것이 사용된 물리적 레이아웃에서 보다 유용하고 발전된 형식 규격으로 자연스러운 이동입니다. mSATA는 기존 형식 규격과 커넥터를 활용하는 이점을 취하지만, M.2는 카드 공간의 사용을 극대화하는 동시에 설치 공간을 최소화하도록 설계되었습니다. M.2 표준은 SATA 및 PCI Express SSD 둘 다를 M.2 모듈에 장착되는 것을 허용합니다.
Disk-on-a-module form factors
disk-on-a-module (DOM)은 40/44-핀 병렬 ATA (PATA) 또는 SATA 인터페이스를 갖는 플래시 드라이브이며, 마더보드에 직접 연결되도록 시도되고 컴퓨터 하드 디스크 드라이브 (HDD)로 사용됩니다. DOM 장치는 전통적인 하드 디스크 드라이브를 에뮬레이트하며, 특수 드라이버 또는 다른 특정 운영 시스템 지원에 대해 필요성을 초래하지 않습니다. DOM은 보통 기계적인 HDD가 단순히 실패하는 열악한 환경에서 종종 전개되는 임베디드 시스템에서 사용되거나, 작은 크기, 낮은 전력 소비 및 조용한 작동때문에 씬 클라이언트에서 사용됩니다.
2016년부터, 저장 용량은 수직 또는 수평 방향을 포함하여 물리적 레이아웃에서 다른 변형과 함께 4MB에서 128GB까지 다양합니다.
Box form factors
많은 DRAM-기반 해결책은 랙-마운트 시스템에 맞도록 종종 설계된 상자를 사용합니다. 백업 전원 공급 장치와 함께 데이터를 저장하기에 충분한 용량을 얻기 위해 요구된 DRAM 부품의 숫자는 전통적인 HDD 형식 규격보다 더 큰 공간을 요구합니다.
Bare-board form factors
메모리 모듈에 보다 공통적인 형식 규격은 지금 부품의 레이아웃에서 그들의 유연성의 이점을 취하기 위해 SSD에 의해 사용되는 것입니다. 이들 중 일부는 PCIe, mini PCIe, mini-DIMM, MO-297, 및 더 많은 것을 포함합니다. Viking Technology의 SATADIMM은 별도의 SATA 커넥터로 컴퓨터에 다시 데이터 연결을 제공하는 것과 함께 마더보드의 빈 DDR3 DIMM 슬롯을 SSD에 전원을 공급하기 위해 사용합니다. 그 결과는 전형적으로 전체 2.5-인치 드라이브 베이를 차지하는 드라이브와 같은 용량을 갖는 쉬운-설치 SSD입니다. 적어도 하나의 제조업체, Innodisk는 전원 케이블에 대해 임의의 필요 없이 마더보드의 SATA 커넥터 (SATADOM)에 직접 장착되는 드라이브를 생산해 왔습니다. 일부 SSD는 PCIe 형식 규격을 기반으로 하고 PCIe 커넥터를 통해 데이터 인터페이스와 전원 둘 다를 호스트에 연결합니다. 이들 드라이브는 직접 PCIe 플래시 제어기 또는 SATA 플래시 제어에 연결되는 PCIe-to-SATA 브릿지 장치를 사용할 수 있습니다.
Ball grid array form factors
2000년대 초에서, 몇몇 회사는 M-Systems (현재 SanDisk) DiskOnChip 및 Silicon Storage Technology의 NANDrive (현재 Greenliant Systems에서 생산됨)와 같은 Ball Grid Array (BGA) 형식 규격에서, 그리고 임베디드 시스템에서 사용에 대해 Memoright의 M1000의 SSD를 도입했습니다. BGA SSD의 주요 이점은 저전력 소비, 간결한 서브-시스템에 맞는 작은 칩 패키지 크기, 및 진동 및 충격으로 인한 악영향을 줄이기 위해 시스템 마더보드에 직접 납땜할 수 있다는 것입니다.
그러한 내장형 드라이브는 종종 eMMC 및 eUFS 표준을 준수합니다.
Comparison with other technologies
Hard disk drives
SSD와 보통의 (회전) HDD 사이이 비교를 만드는 것은 어렵습니다. 전통적인 HDD 벤치마크는 회전 지연시간 및 탐색 시간과 같이 HDD에서 열악한 성능 특성에 초점을 맞추는 경향이 있습니다. SSD는 회전 또는 데이터를 찾을 필요가 없기 때문에, 그것들은 그러한 테스트에서 HDD보다 훨씬 우수하다는 것이 입증될 수 있습니다. 어쨌든, SSD는 혼합된 읽기 및 쓰기에 대한 도전-과제가 있고, 그것들의 성능은 시간이 지남에 따라 저하될 수 있습니다. SSD 테스트는 (사용에서) 전체 드라이브에서 시작해야 하는데, 왜냐하면 빈 (새롭고, 박스에서-꺼낸) 드라이브는 오직 몇 주 사용한 후에 표시되는 것보다 훨씬 더 나은 쓰기 성능을 가질 수 있기 때문입니다.
전통적인 하드 드라이브를 넘어 솔리드-스테이트 드라이브의 장점의 대부분은 전자-기계가 아닌 완전히 전자적으로 데이터에 액세스할 수 있는 능력에 기인하며, 월등한 전송 속도와 기계적 견고성을 초래합니다. 다른 한편으로, 하드 디스크 드라이브는 가격 대비 훨씬 더 높은 용량을 제공합니다.
일부 현장 고장률은 SSD가 HDD보다 훨씬 더 안정적이라는 것을 나타내지만, 다른 것들은 그렇지 않습니다. 어쨌든, SSD는 갑작스러운 전원 중단에 유례없이 민감하여, 쓰기가 중단되거나 심지어 드라이브의 완전한 손실의 경우를 초래합니다. HDD와 SSD 둘 다의 안정성은 모델마다 굉장히 변동적입니다.
HDD와 마찬가지로, 서로 다른 SSD의 비용과 성능 사이에는 절충안이 있습니다. 단일-레벨 셀 (SLC) SSD는 다중-레벨 (MLC) SSD보다 훨씬 비싸지만 상당한 속도 이점을 제공합니다. 동시에, DRAM-기반 솔리드-스테이트 스토리지는 현재 다른 SSD의 평균 100 마이크로초 대신에 10 마이크로 초의 평균 응답 시간과 함께 가장 빠르고 가장 비용이 많이 드는 것으로 여겨집니다. 엔터프라이즈 플래시 장치 (EFD)는 덜-비싼 SSD와 유사한 성능 및 응답 시간으로 계층-1 애플리케이션의 요구 사항을 처리하도록 설계되었습니다.
전통적인 HDD에서, 다시-쓰인 파일은 일반적으로 디스크 표면에서 원본 파일과 같은 위치를 차지할 것이지만, SSD에서 새로운 복사본은 마모 수준화의 목적에 대해 다른 NAND 셀에 종종 쓰일 것입니다. 마모 수준화 알고리듬은 복잡하고 철저하게 테스트하기가 어렵습니다; 결과로써, SSD에서 데이터 손실의 주요 원인 중 하나는 펌웨어 버그입니다.
다음 테이블은 두 기술의 장단점에 대한 자세한 개요를 보여줍니다. 비교는 전형적인 특성을 반영하였고, 특정 장치에 대해서는 유지되지 않을 수 있습니다.
NAND-기반 SSD와 HDD의 비교 | ||
속성 또는 특성 | 솔리드-스테이드 드라이브 | 하드 디스크 드라이브 |
용량 당 가격 | SSD는 일반적으로 HDD보다 더 비싸고 향후 10년 동안 계속 유지될 것으로 예상됩니다. 2018년 1분기 기준 SSD 가격은 4TB 모델에 기초하여 기가바이트 당 약 30 센트 (US)입니다. 가격은 일반적으로 매년 하락해 왔고 2018년에도 계속 하락할 것으로 예상됩니다. |
2018년 1분기 기준 HDD 가격은 1TB 모델에 기초하여 기가바이트 당 약 2에서 3 센트 (US)입니다. 가격은 일반적으로 매년 하락해 왔고 2018년에도 계속 하락할 것으로 예상됩니다. |
저장 용량 | 2018년에서, SSD는 크기에서 100TB까지 제공되었지만, 덜 값 비싼, 120에서 512GB 모델이 보다 공통적이었습니다. | 2018년에서, 16TB까지의 HDD가 사용될 수 있었습니다. |
신뢰성 – 데이터 보존 | 만약 전원없는 남겨지면, 마모된 SSD는 전형적으로 온도에 따라 저장에서 1에서 2년 후에 데이터를 잃어버리기 시작합니다. 새로운 드라이브는 약 10년 동안 데이터를 보관하기로 되어 있습니다. MLC와 TLC 기반 장치는 SLC-기반 장치보다 더 빨리 데이터를 잃는 경향입니다. SSD는 보관용으로 적합하지 않습니다. | 만약 낮은 온도의 건조한 환경에 보관되면, HDD는 전원없이 데이터를 매우 오랫동안 유지할 수 있습니다. 어쨌든, 기계 부품은 시간이 지남에 따라 응고되는 경향이 있고 드라이브는 보관에서 몇 년이 지난 후 회전하는 것을 실패합니다. |
신뢰성 – 수명 | SSD에는 기계적으로 고장날 움직이는 부품이 없으므로 이론상 HDD보다 더 안정적이어야 합니다. 어쨌든, 실제에서 이것은 명확하지 않습니다. 플래시-기반 SSD의 각 블록은 실패하기 전에 제한된 횟수만큼 오직 지울 수 (및 따라서 쓸 수) 있습니다. 제어기는 드라이브가 정상적인 사용 아래에서 수년 동안 지속될 수 있도록 이러한 제한을 관리합니다. DRAM 기반 SSD는 쓰기의 제한된 횟수를 가지지 않습니다. 어쨌든 제어기의 고장은 SSD를 사용할 수 없게 만들 수 있습니다. 신뢰성은 특정 드라이브에 대해 40%에 도달하는 반환 비율과 함께 SSD 제조업체 및 모델에 따라 크게 변합니다. 많은 SSD는 정전으로 인해 심각한 장애를 일으킵니다; 2013년 12월 많은 SSD를 대상으로 한 설문 조사는 그것들 중 오직 일부가 여러 번의 정전에서 살아남을 수 있음을 발견되었습니다. Facebook 연구는 SSD의 물리적 주소 공간 (예를 들어, 비-연속적으로 할당된 데이터)에 걸쳐 흩어진 데이터 레이아웃, 고밀도 데이터 레이아웃 (예를 들어, 연속 데이터) 및 더 높은 작동 온도 (데이터 전송에 사용되는 전력과 관련됨) 각각은 SSD 사이의 고장율을 증가시키는 것으로 이어짐을 밝혀냈습니다. 어쨌든, SSD는 보다 안정적이고 오래 지속되도록 많은 수정을 거쳐 왔습니다. 오늘날 시장에 출시된 새로운 SSD는 수명을 보장하기 위해 전력 손실 보호 회로, 마모 수준화 기술 및 열 조절을 사용합니다. |
HDD는 움직이는 부품을 가지고, 그로 인한 마모로 인해 잠재적인 기계적 고장에 원인이 되므로 이론적으로 SSD보다 덜 신뢰할 수 있어야 합니다. 어쨌든, 실제에서 이것은 불분명합니다. 저장 매체 자체 (자기 플래터)는 본질적으로 읽기 및 쓰기 작업에서 저하되지 않습니다. Carnegie Mellon University에 의해 수행된 소비자 및 엔터프라이즈-등급 HDD에 대한 연구에 따르면, 평균 고장률은 6년이고, 기대 수명은 9–11 년입니다. 어쨌든, 갑작스럽고, 치명적인 데이터 손실의 위험이 HDD에 대해 더 낮을 수 있습니다. 장기적으로 오프라인 (플래터에 전원이 공급되지 않음)에 저장될 때, HDD의 자기 매체는 SSD에서 사용되는 플래시 메모리보다 훨씬 오래 데이터를 보관합니다. |
시작 시간 | 거의 순간; 준비할 기계 부품이 없습니다. 자동 절전 모드에서 나오려면 몇 밀리 초가 필요할 수 있습니다. | 드라이브 스핀-업은 몇 초 정도 걸릴 수 있습니다. 많은 드라이브를 가진 시스템은 최대 소비 전력을 제한하기 위해 스핀-업을 서로 교체적으로 할 필요가 있을 것이며, 이것은 HDD가 처음 시작될 때 잠시 높아집니다. |
순차 접근 성능 | 소비자 제품에서, 최대 전송 속도는 전형적으로 드라이브에 따라 약 200MB/s에서 3500MB/s까지 범위입니다. 엔터프라이즈 SSD는 초당 멀티-기가바이트 처리량을 가질 수 있습니다. | 한번 헤드가 위치에 놓이면, 연속 트랙을 읽거나 쓸 때, 현대 HDD는 약 200MB/s에서 데이터를 전송할 수 있습니다. 데이터 전송율은 역시 회전 속도에 따라 달라지며, 이것은 3,600에서 15,000rpm의 범위일 수 있고 역시 트랙에 의존합니다 (외부 트랙에서 읽는 것이 더 빠릅니다). 데이터 전송 속도는 480MB/s(시험용)까지 될 수 있습니다. |
임의 접근 성능 | 임의 접근 시간은 전형적으로 0.1ms 미만입니다. 데이터는 플래시 메모리의 다양한 위치에서 직접 검색될 수 있으므로, 접근 시간은 보통 큰 성능 병목 현상이 아닙니다. 읽기 성능은 데이터가 저장된 위치에 따라 변경되지 않습니다. 하드 디스크 드라이브 검색이 제한 요소인 응용에서, 이것은 더 빠른 부팅과 응용 프로그램 시작 시간을 초래합니다 (암달의 법칙을 참조하십시오). SSD 기술은 다소 일관된 읽기/쓰기 속도를 제공할 수 있지만, 많은 개별적은 더 작은 블록에 접근될 때, 성능이 저하됩니다. 플래스 메모리는 다시 쓰여지기 전에 지워져야 합니다. 이것은 의도된 것 (쓰기 증폭으로 알려진 현상) 이상의 쓰기 작업의 과도한 숫자를 요구하며, 이것은 성능에 부정적인 영향을 줍니다. |
읽기 지연 시간은 SSD보다 훨씬 깁니다. 임의 접근 시간은 헤드를 이동하고 자기 헤드 아래에서 데이터에 대해 회전하기 위해 기다리는 필요에 기인하여 2.9 (고급 서버 드라이브)에서 12ms (랩탑 HDD)까지 범위를 이룹니다. 읽기 시간은 데이터의 위치와 헤드의 위치가 다를 가능성이 높기 때문에 모든 각 탐색마다 다릅니다. 만약 플래터의 다른 영역의 데이터가, 조각화된 파일과 함께, 접근되면, 응답 시간은 각 조각을 검색해야 할 필요에 의해 늘어날 것입니다. |
파일 시스템 조각화의 영향 | (전형적인 FS 블록 크기, 말하자면 4KB를 넘어서) 데이터를 순차적으로 읽는 것에 제한된 이점이 있으며, SSD에 대해 조각화를 무시해도 좋게 만듭니다. 조각-모음은 제한된 수명을 가지는 NAND 플래시 셀의 추가적인 쓰기를 만듬으로써 마모의 원인이 될 것입니다. 어쨌든, 심지어 SSD와 함께 특정 파일 시스템이 유지할 수 있는 조각화 정도에는 실질적인 제한이 있습니다; 한번 해당 제한이 도달되면, 후속 파일 할당이 실패합니다. 결과적으로, 조각-모음이, 그 정도는 적을지라도, 여전히 필요할 수 있습니다. | NTFS와 같은, 일부 파일 시스템은 만약 자주 쓰여지면 시간이 지남에 따라 조각화됩니다; 주기적 조각-모음이 최적의 성능을 유지하기 위해 요구됩니다. 이것은 일반적으로 최신 파일 시스템에서 문제가되지 않습니다. |
소음 | SSD는 움직이는 부품이 없고 따라서 조용하지만, 일부 SSD에서, (블록 삭제에 대해) 고전압 발생기로부터 높은 피치 소음이 발생할 수 있습니다. | HDD는 움직이는 부품 (헤드, 액추에이터, 및 스핀들 모터)를 가지고 윙윙 거리는 소리와 딸깍거리는 특유한 소음을 만듭니다; 소음 수준은 RPM에 따라 다르지만, 상당할 수 있습니다 (종종 냉각 팬의 소음보다 훨씬 낮습니다). 랩탑 하드 드라이브는 상대적으로 조용합니다. |
온도 제어 | 페이스북 연구는 40°C 위의 작동 온도에서, SSD 사이의 고장률은 온도에 따라 증가함을 발견했습니다. 어쨌든, 이것은, 성능에 잠재적인 비용이 들기는 하지만, 열 트라들링을 사용하는 더 새로운 드라이브에서는 그렇지 않았습니다. 실제에서, SSD는 보통 임의의 특별한 냉각을 요구하지 않고 HDD보다 더 높은 온도를 견딜 수 있습니다. 애드온-카드 또는 2.5-인치 베이 장치로 설치된 고급-엔터프라이즈 모델은 생성된 열을 발산하는 방열판과 함께 판매될 수 있으며, 작동하려면 일정한 양의 공기-흐름이 요구됩니다. | 35 °C (95 °F) 위의 주변 온도는 하드 디스크의 수명을 단축할 수 있고, 안정성은 55 °C (131 °F) 위의 드라이브 온도에서 낮아질 것입니다. 팬 냉각은 만약 온도가 이들 값을 초과하면 요구될 수 있습니다. 실제에서, 현대 HDD는 냉각에 대해 특별한 배치없이 사용할 수 있습니다. |
최저 작동 온도 | SSD는 −55 °C (−67 °F)에서 작동할 수 있습니다. | 대부분의 현대 HDD는 0 °C (32 °F)에서 작동할 수 있습니다. |
작동할 때 최대 고도 | SSD는 이것에 대한 문제를 가지지 않습니다. | HDD는 최대 3,000 미터 (10,000 피트)의 고도에서 안전하게 작동할 수 있습니다. HDD는 12,000 미터 (40,000 피트) 이상의 고도에서는 작동에 실패할 것입니다. 헬륨으로-채워진 (밀봉된) HDD의 도입으로, 이것은 문제가 되지 않을 것으로 예상됩니다. |
추운 환경에서 더 따뜻한 환경으로 이동 | SSD는 이것에 함께 문제를 가지지 않습니다. 열 트라들링 메커니즘으로 인해, SSD는 안전하게 유지되고 온도 불균형으로부터 방지됩니다. | 일부 HDD를 작동하기 전에 추운 환경에서 더 따뜻한 환경으로 이동할 때, 일정량의 적응 시간이 필요할 수 있습니다; 습도에 따라, 응결이 헤드 및/또는 디스크에 발생할 수 있고 그것을 즉시 작동하면 그러한 부품을 손상시키는 결과를 초래할 것입니다. 현대 헬륨 HDD는 밀봉되어 있고 그러한 문제를 가지지 않습니다. |
숨 구멍 | SSD는 숨 구멍을 요구하지 않습니다. | 대부분의 현대 HDD는 제대로 작동하기 위해 숨구멍을 요구합니다. 헬륨으로 채워진 장치는 밀봉되어 있고 구멍을 가지지 않습니다. |
환경 요인에 대한 감수성 | 움직이는 부품이 없으며, 충격, 진동, 움직임, 및 오염에 매우 강합니다. | 빠르게 회전하는 플래터 위로 날아가는 헤드는 충격, 진동, 움직임, 및 오염에 취약하여 매체를 손상시킬 수 있습니다. |
설치 및 장착 | 방향, 진동 또는 충격에 민감하지 않습니다. 보통 노출된 회로가 없습니다. 회로는 카드 형식 장치에서 노출될 수 있고 그것은 전도성 물질에 의해 단락되어서는 안됩니다. | 회로가 노출될 수 있고, 그것은 (컴퓨터의 금속 섀시와 같은) 전도성 물질에 의해 단락되어서는 안됩니다. 진동 및 충격으로부터 보호하기 위해 장착되어야 합니다. 일부 HDD는 기울어진 위치에 설치되어서는 안됩니다. |
자기 필드에 대한 민감성 | 플래시 메모리에 미치는 영향은 적지만, 전자기 펄스는 임의의 전기적 시스템, 특히 집적 회로를 손상시킬 것입니다. | 일반적으로, 자석 또는 자기 서지는 데이터 손상 또는 드라이브 내부의 기계적 손상을 초래할 수 있습니다. 드라이브의 금속 케이스는 자기 플래터에 낮은 수준의 보호를 제공합니다. |
무게와 크기 | SSD, 기본적으로 회로 기판에 탑재된 반도체 메모리 장치는 작고 가볍습니다. 그것들은 종종 HDD (2.5-인치 또는 1.8-인치)와 같은 형식 규격을 따르거나 베어 PCB (M.2 및 mSATA)입니다. 대부분의 주류 모델의 인클로저는, 만약에 어떠한, 대부분 플라스틱 또는 경량 금속으로 만들어집니다. 고성능 모델는 종종 장치에 부착된 방열판을 가지거나, 그것의 방열판 역할을 하는 부피가 큰 케이스를 가지며, 그것의 무게를 증가시킵니다. | HDD는 일반적으로 SSD보다 무거운데, 왜냐하면 인클로저는 대부분 금속으로 만들어져 있고, 그것들은 모터와 대형 자석과 같은 무거운 물체를 포함하고 있기 때문입니다. 3.5-인치 드라이브의 무게는 전형적으로 약 700g (약 1.5 파운드)입니다. |
안전한 쓰기 제한 | NAND 플래시 메모리는 절대 덮어쓸 수 없지만, 이전에 지워진 블록에 다시 써여져야 합니다. 만약 소프트웨어 암호화 프로그램이 이미 SSD에 있는 데이터를 암호화하면, 덮어-쓴 데이터는 여전히 비-보안, 비-암호화, 및 접근-가능입니다 (드라이브-기반 하드웨어 암호화는 이 문제를 가지지 않습니다). 역시 데이터는 드라이브에 내장된 특별한 "보안 삭제" 절차없이 원본 파일을 덮어쓺으로써 안전하게 삭제될 수 없습니다. | HDD는 임의의 특정 섹터에서 드라이브에 직접 데이터를 덮어쓸 수 있습니다. 어쨌든, 드라이브의 펌웨어는 손상된 블록을 예비 영역과 교환할 수 있으므로, 비트와 조각은 여전히 존재할 수 있습니다. 일부 제조업체의 HDD는 ATA Secure Erase Enhanced Erase 명령에서 재배치된 섹터를 포함하여 전체 드라이브를 영으로 채웁니다. |
읽기/쓰기 성능 대칭 | 덜 값-비싼 SSD는 전형적으로 읽기 속도보다 월씬 더 낮은 쓰기 속도를 가집니다. 고성능 SSD는 비슷한 읽기와 쓰기 속도를 가집니다. | HDD는 일반적으로 읽는 것에 대한 것보다 쓰는 것에 대한 약간 더 긴 탐색 시간을 가집니다. |
자유 블록 가용성 및 TRIM | SSD 쓰기 성능은 자유, 프로그래밍-가능한 블록의 가용성에 의해 크게 영향을 받습니다. 더 이상 사용되지 않는 이전에 기록된 데이터 블록은 TRIM에 의해 회수될 수 있습니다; 어쨌든, 심지어 TRIM과 함께, 더 적은 자유 블록은 더 낮은 성능을 초래합니다. | HDD는 자유 블록에 의해 영향을 받지 않고 TRIM으로부터 이익을 받지 않습니다. |
전력 소비 | 고성능 플래시-기반 SSD는 일반적으로 HDD의 전력의 절반에서 1/3을 요구합니다. 고성능 DRAM SSD는 일반적으로 HDD만큼 많은 전력을 요구하고, 심지어 시스템의 나머지가 종료될 때에도 전원에 연결되어야 합니다. DevSlp와 같은 새로운 기술은 유휴 드라이브의 전력 요구-사항을 최소화할 수 있습니다. |
최저-전력 HDD (1.8-인치 크기)는 유휴 상태일 때 0.35와트만큼 작게 사용할 수 있습니다.[195] 2.5-인치 드라이브는 전형적으로 2에서 5와트를 사용합니다. 최고-성능 3.5-인치 드라이브는 약 20와트까지를 사용할 수 있습니다. |
최대 면적 저장 밀도 (평방 인치 당 테라비트) | 2.8 | 1.2 |
Memory cards
메모리 카드와 대부분의 SSD 둘 다는 플래시 메모리를 사용하지만, 그것들은 매우 다른 시장과 용도를 가집니다. 각각은 특정 사용자의 요구를 가장 잘 충족시키기 위해 최적화되고 조정되는 다양한 속성의 숫자를 가집니다. 이들 특성 중 일부는 전력 소비, 성능, 크기, 및 신뢰성을 포함합니다.
SSD는 원래 컴퓨터 시스템에서 사용하도록 설계되었습니다. 첫 번째 장치는 하드 디스크 드라이브를 교체하거나 확장하기 위한 의도였으므로, 운영 시스템은 이것들을 하드 드라이브로 인식했습니다. 원래, 솔리드 스테이트 드라이브는 하드 드라이브와 마찬가지로 컴퓨터에 같은 모양이고 장착되었습니다. 나중에, SSD는 더 작고 더 간결해졌으며, 결국 M.2 형식 규격과 같은 고유한 형식 규격을 개발했습니다. SSD는 컴퓨터 내부에 영구적으로 설치되도록 설계되었습니다.
대조적으로, (Secure Digital (SD), CompactFlash (CF), 및 많은 다른 것들과 같은) 메모리 카드는 원래 디지털 카메라에 대해 설계되었었고 나중에 그들의 방식을 휴대 전화, 게임 장치, GPS 장치, 등에 발견되었습니다. 대부분의 메모리 카드는 SSD보다 물리적으로 더 작고, 반복적으로 삽입 및 제거될 수 있도록 설계되었습니다.
SSD failure
SSD는 기존의 자기 하드 드라이브와는 매우 다른 고장 모드를 가지고 있습니다. 솔리드-스테이트 드라이브는 움직이는 부품이 없기 때문에, 그것들은 일반적으로 기계적 고장을 받게 되지 않습니다. 대신에, 다른 종류의 고장이 발생할 수 있습니다 (예를 들어, 갑작스러운 전원 장치 고장으로 인한 불완전하거나 실패한 쓰기는 HDD보다 더 문제가 될 수 있고, 만약 칩이 실패하면 칩에 있는 모든 데이터가 손실되며, 이런 것은 자기 드라이브에서 적용할 수 없는 시나리오입니다). 어쨌든, 전체적으로 통계에 따르면, SSD는 일반적으로 매우 신뢰할 수 있고, 종종 제조업체에 의해 명시된 예상 수명보다 훨씬 더 오래 계속 작동하는 경우가 있습니다.
SSD의 내구성은 데이터시트에 다음 두 가지 형식 중 하나로 제공되어야 합니다:
- 먼저 n DW/D (매일 n 드라이브 쓰기)
- 또는 m TBW (쓰인 최대 테라바이트), 짧게 TBW.
따라서 예를 들어 1TB를 갖는 Samsung 970 EVO NVMe M.2 SSD (2018)는 600TBW의 내구성을 가집니다.
SSD reliability and failure modes
2013년부터 2015년까지 진행된 Techreport.com에 의한 초기 조사에서는 여러 플래시-기반 SSD가 고장난 방법과 지점을 식별하기 위해 파괴하는 테스트를 포함합니다. 그 웹사이트는 모든 드라이브가 "문제없이 수백 테라바이트를 씀으로써 공식 내구성 사양을 능가"한다는 사실을 발견했으며, 이 명령의 양은 전형적인 소비자 요구를 초과하는 것입니다. 고장난 첫 번째 SSD는 TLC-기반이었으며, 드라이브는 800TB 이상 쓰기에 성공했습니다. 테스트에서 세 개의 SSD는 고장나기 전에 해당 양의 세 배 (거의 2.5PB)를 기록했습니다. 그 테스트는 한층 더 소비자-시장 SSD의 놀라운 신뢰성을 보여주었습니다.
구글의 데이터 센터에서 6년에 걸쳐 수집된 데이터 및 드라이브 일수 "수백만" 확장을 기반으로 한 2016년 현장 연구는 처음 4년에서 교체를 요구되는 플래시-기반 SSD의 비율은 모델에 따라 4%에서 10% 범위였음을 발견했습니다. 저자는 SSD가 하드 디스크 드라이브보다 훨씬 더 낮은 비율로 고장난다고 결론지었습니다. (대조적으로, 71,940개의 HDD에 대한 2016년 평가에서는 구글의 SSD의 그것들과 비슷한 고장률을 발견했습니다: HDD의 연간 고장률은 평균 1.95%였습니다.) 그 연구는 역시, 단점으로, SSD가 HDD의 그것보다 훨씬 높은 비율의 수정-불가능한 오류 (데이터 손실을 유발함)를 경험함을 보였습니다. 그것은 역시 예상치 못한 결과와 암시로 이어졌습니다:
- 실제 사용에서, MLC-기반 설계는 – SLC 설계보다 신뢰성이 낮다고 인정됨 – 종종 SLC만큼 신뢰성이 있습니다. (그 발견은 "SLC가 일반적으로 MLC보다 신뢰할 수 없다"라고 말합니다.) 그러나 일반적으로 쓰기 내구성은 다음과 같다고 말합니다:
- SLC NAND: 블록 당 100,000 지우기
- MLC NAND: 중간-용량 응용에 대해 블록 당 5,000에서 10,000 지우기, 및 고-용량 응용에 대해 1,000에서 3,000 지우기
- TLC NAND: 블록 당 1,000 지우기
- 사용 일수로 측정되는, 장치 수명은 SSD 안정성에서 주요 인수이고 하루 당 쓰여진 테라바이트 또는 드라이브 쓰기에 의해 측정되는 데이터의 읽기 또는 쓰기 양은 아닙니다. 이것은 "실리콘 노화"와 같은 다른 노화 메커니즘이 작용하고 있음을 시사합니다. 그 상관-관계는 중요합니다 (약 0.2–0.4).
- 원시 비트 오류율 (RBER)은 마모와 함께 천천히 증가하고—종종 가정하는 것처럼 기하급수적으로 증가하지 않습니다. RBER은 다른 오류 또는 SSD 고장의 좋은 예측기가 아닙니다.
- 수정-불가능한 비트 오류율 (UBER)은 널리 사용되지만 고장의 좋은 예측기가 아닙니다. 어쨌든 SSD UBER 비율은 HDD에 대해 그것보다 높으므로, 비록 그것들이 고장을 예측하지 않을지라도, 그것들은 HDD보다 SSD에서 보다 공통적인 읽을 수 없는 블록에 기인하여 데이터 손실로 이어질 수 있습니다. 그 결론은, 비록 전반적으로 더 신뢰할 수 있을지라도, 사용자에게 영향을 줄 수 있는 수정-불가능한 오류의 비율이 더 크다는 것입니다.
- "새로운 SSD의 불량 블록은 공통적이고, 불량 블록의 큰 숫자를 갖는 드라이브는 대부분 다이 또는 칩 고장으로 인해 수백 개의 다른 블록을 잃을 가능성이 훨씬 더 높습니다. SSD의 30–80%는 적어도 하나의 불량 블록을 발현하고 2–7%는 배포 첫 4년 동안 적어도 하나의 불량 칩을 발현합니다."
- 예상 수명에 도달한 후에 오류에서 급격한 증가는 없습니다.
- 대부분의 SSD는 약간의 불량 블록, 아마도 2–4 정도를 발현합니다. 많은 불량 블록을 발현하는 SSD는 종종 훨씬 더 많이 (아마도 수백 개) 발현하게 되고, 고장나기 쉬울 수 있습니다. 어쨌든 대부분의 드라이브 (99%+)는 제조시 불량 블록과 함께 배송됩니다. 전반적으로 발견된 결과는 불량 블록이 공통적이고 드라이브의 30–80%가 사용 중 적어도 하나가 발현될 것이지만, 약간의 불량 블록 (2–4)가 나중에 최대 수백 개의 불량 블록을 예측기라는 것입니다. 제조시 불량 블록 숫자는 이후의 불량 블록의 발현과 관련이 있습니다. 그 보고서의 결론은 SSD가 불량 블록의 "한 줌 미만" 또는 "많은 숫자"를 갖는 경향이 있음을 덧붙였고, 이것이 최종 고장을 예측하는 기초가 될 수 있다고 제안했습니다.
- 약 2–7%의 SSD는 사용 후 처음 4년에서 부량 칩을 발현할 것입니다. 이들 칩의 2/3 이상이 제조업체의 허용 오차 및 사양을 위반할 것이며, 이것은 전형적으로 칩의 블록 중 2% 이상이 예상되는 쓰기 수명 내에 고장나지 않음을 보장합니다.
- 수리 (보증 서비스)를 필요로 하는 그들 SSD의 96%는 수명 중 오직 한번 교정할 필요가 있습니다. 교정 간격은 모델에 따라 "수천 일"에서 "거의 15,000일"까지 다양합니다.
Data recovery and secure deletion
솔리드 스테이트 드라이브는 데이터 복구 회사에 새로운 도전을 놓았는데, 왜냐하면 데이터를 저장하는 방법이 비-선형이고 하드 디스크 드라이브의 그것보다 훨씬 더 복잡하기 때문입니다. 드라이브가 내부적으로 작동하는 전략은 제조업체마다 크게 다를 수 있고, TRIM 명령은 삭제된 파일의 전체 범위를 영으로 채웁니다. 마모 평준화는 데이터의 물리적 주소와 운영 시스템에 노출된 주소가 다르다는 것을 역시 의미합니다.
데이터의 안전한 삭제를 위해, ATA Secure Erase 명령이 사용될 수 있습니다. hdparm와 같은 프로그램은 이 목적에 대해 사용될 수 있습니다.
Reliability metrics
JEDEC Solid State Technology Association (JEDEC)은 신뢰성 메트릭에 대한 표준을 발표했습니다:
- 복구-불가능한 비트 오류 비율 (UBER)
- 쓰인 테라바리트 (TBW) – 보증 기간 내에 드라이브에 쓰일 수 있는 테라바이트의 숫자
- 일별 드라이브 쓰기 (DWPD) – 보증 기간 내에 일별로 쓰일 수 있는 드라이브의 총 용량의 횟수
Applications
일반적으로 HDD에 비해 비용이 많이 들었기 때문에, 2009년까지, SSD는 저장 시스템의 속도를 최대한 높여야 하는 임무 임계 응용의 측면에서 주로 사용되었습니다. 플래시 메모리는 SSD의 공통 부품이 되었기 때문에, 가격 하락과 밀도 증가는 다른 많은 응용에서 보다 비용-효율적으로 만들어져 왔습니다. 예를 들어, 분산 컴퓨팅 환경에서, SSD는 느린 HDD 기반 백엔드 저장 시스템에 대한 대량의 사용자 요청을 일시적으로 흡수하는 분산 캐시 계층의 빌딩 블록으로 사용될 수 있습니다. 이 계층은 저장 시스템보다 훨씬 높은 대역폭과 낮은 대기 시간을 제공하고, 분산 키-값 데이터베이스 및 분산 파일 시스템과 같은 다양한 형태로 관리될 수 있습니다. 슈퍼 컴퓨터에서, 이 계층은 전형적으로 버스트 버퍼로 참조됩니다. 이 빠른 계층과 함께, 사용자는 종종 더 짧은 시스템 응답 시간을 경험합니다. 시스템 데이터의 빠른 액세스로부터 이점을 누릴 수 있는 조직은 주식 거래 회사, 통신 회사, 스트리밍 미디어 및 비디오 편집 회사를 포함합니다. 더 빠른 저장의 이점을 얻을 수 있는 응용의 목록은 방대합니다.
플래시-기반 솔리드 스테이트 드라이브는 일반적인-목적 개인용 컴퓨터 하드웨어에서 네트워크 기구를 생성하기 위해 사용할 수 있습니다. 운영 시스템과 응용 소프트웨어가 포함된 쓰기 방지된 플래시 드라이브는 더 크고, 덜 안정적인 디스크 드라이브 또는 CD-ROM을 대체할 수 있습니다. 이러한 방식으로 구축된 기구는 값 비싼 라우터와 방화벽 하드웨어에 대한 저렴한 대안을 제공할 수 있습니다.
라이브 SD 운영 시스템을 갖는 SD 카드를 기반으로 하는 SSD는 쓰기-잠금이 쉽습니다. 클라우드 컴퓨팅 환경 또는 다른 쓰기-가능한 매체와 결합된, 지속성을 유지하기 위해, 쓰기-잠금된 SD 카드에서 부팅된 OS는 건장하고, 엄격하고, 안정적이고, 영구적인 손상에 영향을 받지 않습니다. 만약 실행중인 OS가 저하되면, 단순히 시스템을 껐다가 다시 켜고 그런-다음 손상되지 않은 초기 상태로 되돌아가고 따라서 특히 견고합니다. SD 카드에 설치된 OS는 손상된 부품을 제거할 필요가 없는데 왜냐하면 그것은 임의의 기록된 미디어를 복원해야 할 수 있지만 쓰기 잠금 상태이기 때문입니다.
Hard-drive cache
2011년에서, 인텔은 Smart Response Technology라고 불리는 Z68 칩셋 (및 모바일 파생-제품)에 대해 캐싱 메커니즘을 도입했으며, 이것은 SATA SSD를 전통적인, 자기 하드 디스크 드라이브에 대해 캐시 (write-through 또는 write-back으로 구성-가능)로 사용하는 것을 허용합니다. 유사한 기술은 HighPoint의 RocketHybrid PCIe 카드에서 유용됩니다.
솔리드-스테이트 하이브리드 드라이브 (SSHD)는 같은 원리를 기반으로 하지만, 별도의 SSD를 사용하는 대신에 전통적인 드라이브의 보드에 플래시 메모리를 어느 정도 통합합니다. 이러한 드라이브에서 플래시 레이어는 ATA-8 명령을 사용하여 호스트에 의해 자기 저장과 독립적으로 접근될 수 있으며, 운영 시스템에서 이것을 관리하는 것을 허용합니다. 예를 들어, 마이크로소프트의 ReadyDrive 기술은 시스템이 하이브네이트될 때 이들 드라이브의 캐시에서 하이브네이션 파일의 일부를 명시적으로 저장하며, 더 빠른 후속 재개를 만듭니다.
듀얼-드라이브 하이브리드 시스템은 같은 컴퓨터에 설치된 개별적인 SSD 및 HDD 장치의 사용을, 컴퓨터 사용자 또는 컴퓨터의 운영 시스템 소프트웨어에 의해 관리되는 전체 성능 최적화와 결합합니다. 이러한 유형의 시스템의 예제는 리눅스에서 bcache와 dm-cache, 및 애플의 Fusion Drive입니다.
File-system support for SSDs
전형적으로 하드 디스크 드라이브에 사용되는 같은 파일 시스템이 솔리드 스테이트 드라이브에 역시 사용될 수 있습니다. 보통 파일 시스템에 대해 SSD를 폐기된 데이터를 재활용하는 것에 도움이 되는 TRIM 명령을 지원할 것으로 예상됩니다 (TRIM에 대한 지원은 SSD 자체 몇 년 후에 태어났지만 이제는 거의 보편적입니다). 이것은 마모 수준화 또는 다른 플래시 메모리 특성을 관리할 필요가 없음을 의미하는데, 왜냐하면 파일 시스템이 SSD에 의해 내부적으로 처리되기 때문입니다. 일부 로그-구조 파일 시스템 (예를 들어, F2FS, JFFS2)은, 특히 파일-시스템 메타데이터를 업데이트할 때와 같이 오직 매우 적은 양의 데이터가 변경되는 상황에서 SSD에 대한 쓰기 증폭을 줄이는 데 도움이 됩니다.
파일 시스템의 기본 특색은 아니지만, 운영 시스템은 파티션을 올바르게 정렬하는 것을 목표로 해야 하며, 이것은 과도한 읽기-수정-쓰기 주기를 방지합니다. 개인용 컴퓨터에 대해 전형적인 관행은 각 파티션을 1 MiB (= 1,048,576 바이트) 마크에서 시작하도록 정렬하는 것이며, 이것은 모든 공통적인 SSD 페이지 및 블록 크기 시나리오를 포함하는데, 왜냐하면 그것은 모든 공통적으로 사용되는 크기 - 1 MiB, 512 KiB, 128 KiB, 4 KiB, and 512 B로 나뉠 수 있기 때문입니다. 최신 운영 시스템 설치 소프트웨어 및 디스크 도구는 이것을 자동으로 처리합니다.
Linux
TRIM 명령에 대한 초기 지원은 리눅스 커널 메인라인의 버전 2.6.28에 추가되었습니다.
Ext4, Btrfs, XFS, JFS, 및 F2FS 파일 시스템은 discard (TRIM 또는 UNMAP) 기능에 대한 지원을 포함합니다.
TRIM 작업에 대해 커널 지원은 2010년 2월 24일에 출시된 리눅스 커널 메인라인의 2.6.33 버전에서 도입되었습니다. 그것을 사용하기 위해, 파일 시스템은 discard 매개변수를 사용하여 마운트되어야 합니다. 리눅스 스왑 파티션은 놓여있는 드라이브가 TRIM을 지원할 때 기본적으로 discard 작업을 수행하며, 그것을 끄거나, 일회성 또는 연속 discard 작업 사이에 선택할 수 있습니다. 대기열을 방해하지 않는 TRIM 명령의 결과를 초래하는 SATA 3.1 기능인, 대기열에-있는 TRIM에 대한 지원은 2013년 11월 2일에 출시된 리눅스 커널 3.12에서 도입되었습니다.
커널-수준 TRIM 작업에 대한 대안은 파일 시스템에서 사용되지 않는 모든 블록을 통과하고 해당 영역에 대한 TRIM 명령을 전달하는 fstrim이라고 불리는 사용자-공간 유틸리티를 사용하는 것입니다. fstrim 유틸리티는 보통 예약된 임무로 크론에 의해 실행됩니다. 2013년 11월부터, 그것은 우분투 리눅스 배포판에서 사용되며, 안정성 이유에 대해 오직 인텔 및 삼성 솔리드-스테이트 드라이브에서 활성화됩니다; 공급업체 확인은 파일 자체에 포함된 지침을 사용하여 /etc/cron.weekly/fstrim 파일을 편집함으로써 비활성화될 수 있습니다.
2010년 이래로, 표준 리눅스 드라이브 유틸리티는 기본적으로 적절한 파티션 정렬을 처리해 왔습니다.
Linux performance considerations
설치 중에, 리눅스 배포판은 보통 TRIM을 사용하도록 설치된 시스템을 구성하지 않고 따라서 /etc/fstab 파일을 수동으로 수집해야 합니다. 이것은 현재 리눅스 TRIM 명령 구현이 최적이 아닐 수 있다는 개념 때문입니다. 특정 상황에서 성능 향상 대신 성능 저하를 일으키는 것으로 입증되었습니다. 2014년 1월부터, 리눅스는 TRIM 사양에서 권장하는 대로 TRIM 범위를 정의하는 벡터화된 목록 대신에 각 섹터에 개별 TRIM 명령을 보냅니다.
성능상의 이유로, I/O 스케줄러를 기본 CFQ (Completely Fair Queuing)에서 NOOP 또는 Deadline으로 전환하는 것을 추천합니다. CFQ는 전통적인 자기 미디어 및 최적화를 위해 설계되었으며, 따라서 그들 I/O 스케줄링 노력의 상당수가 SSD와 사용할 때 낭비됩니다. 그들 디자인의 일부로써, SSD는 I/O 작업에 훨씬 더 큰 수준의 병렬 처리를 제공하므로, 내부 연산 – 특히 고급 SSD에 대해 스케줄링 결정을 맡기는 것이 좋습니다.
고성능 SSD 저장을 위한 확장-가능한 블록 계층이, blk-multiqueue 또는 blk-mq로 알려져 있고 주로 Fusion-io 엔지니어에 의해 개발되었으며, 2014년 1월 19일에 출시된 커널 버전 3.13의 리눅스 커널 메인라인에 병합되었습니다. 이것은 훨씬 더 높은 I/O 제출율을 허용함으로써, SSD와 NVM Express에 의해 제공된 성능을 활용합니다. 이 새로운 리눅스 커널 블록 계층 설계와 함께, 내부 대기열이 두 수준 (CPU-별 및 하드웨어-제출 대기열)으로 분할되어, 따라서 병목 현상을 제거하고 훨씬 더 높은 수준의 I/O 병렬화를 허용합니다. 2015년 4월 12일에 출시된 리눅스 커널 버전 4.0부터, VirtIO 블록 드라이버, SCSI 계층 (이것은 직렬 ATA 드라이버에서 사용), 장치 매퍼 프레임워크, 루프 장치 드라이버, 비-정렬된 블록 이미지 (UBI) 드라이버 (이것은 플래시 메모리 장치에 대한 삭제 블록 관리 계층을 구현함), 및 RBD 드라이버 (이것은 Ceph RADOS 개체를 블록 장치로 내보냄)가 실제로 이 새로운 인터페이스를 사용하도록 수정되어 왔습니다; 다른 드라이버는 다음 릴리스에서 포팅될 것입니다.
macOS
Mac OS X 10.6.8 (Snow Leopard) 이후 버전은 TRIM을 지원하지만 오직 Apple에서-판매된 SSD와 함께 사용할 때 가능합니다. TRIM은, 비록 Trim Enabler와 같은 타사 유틸리티를 사용함으로써 활성화될 수 있을지라도, 타사 드라이브에 대해 자동으로 활성화되지 않습니다. TRIM의 상태는 시스템 정보 애플리케이션 또는 system_profiler 명령-줄 도구에서 확인될 수 있습니다.
OS X 10.10.4 (Yosemite) 이후 버전은 비-애플 SSD에서 TRIM을 활성화하는 터미널 명령으로 sudo trimforce enable를 포함합니다. Mac OS X 10.6.8보다 이전 버전에서 TRIM을 활성화하는 기술도 있지만, 그들 경우에서 TRIM이 실제로 제대로 활용되는지 여부는 여전히 불확실합니다.
Microsoft Windows
버전 7 이전에는, 마이크로소프트 윈도우가 솔리드 스테이트 드라이브를 지원하기 위한 특별한 조치를 취하지 않았습니다. 윈도우 7에서, 표준 NTFS 파일 시스템은 TRIM 명령에 대해 지원을 제공합니다. (윈도우의 다른 파일 시스템은 TRIM을 지원하지 않습니다.)
기본적으로, 윈도우 7 및 더 새로운 버전은 만약 장치가 솔리드 스테이트 드라이브로 감지되면 자동으로 TRIM 명령을 실행합니다. 어쨌든, TRIM은 모든 여유 공간을 되돌릴 수 없게 재설정하기 때문에, 그것은 마모 수준화에 걸쳐 데이터 복구 활성화가 선호되는 곳에서 지원을 비활성화하는 것이 좋습니다. 동작을 변경하기 위해, 레지스트리 키 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem에서 값 DisableDeleteNotification은 1로 설정될 수 있습니다. 이것은 TRIM 명령을 실행하는 대용량 저장소 드라이버를 막습니다.
윈도우는 단지 파일-삭제 작업 이상을 위해 TRIM 명령을 구현합니다. TRIM 작업은 포맷과 삭제와 같은 파티션- 및 볼륨-수준 명령과 완전히 통합되며, 자르기 및 압축과 관련된 파일-시스템 명령과 통합되고, 시스템 복원 (역시 볼륨 스냅샷이라고 알려짐) 특색과 완전히 통합됩니다.
Windows Vista
Windows Vista generally expects hard disk drives rather than SSDs. Windows Vista includes ReadyBoost to exploit characteristics of USB-connected flash devices, but for SSDs it only improves the default partition alignment to prevent read-modify-write operations that reduce the speed of SSDs. Most SSDs are typically split into 4 KiB sectors, while most systems are based on 512 byte sectors with their default partition setups unaligned to the 4 KiB boundaries. The proper alignment does not help the SSD's endurance over the life of the drive; however, some Vista operations, if not disabled, can shorten the life of the SSD.
Drive defragmentation should be disabled because the location of the file components on an SSD doesn't significantly impact its performance, but moving the files to make them contiguous using the Windows Defrag routine will cause unnecessary write wear on the limited number of P/E cycles on the SSD. The Superfetch feature will not materially improve the performance of the system and causes additional overhead in the system and SSD, although it does not cause wear. Windows Vista does not send the TRIM command to solid state drives, but some third part utilities such as SSD Doctor will periodically scan the drive and TRIM the appropriate entries.
Windows 7
Windows 7 and later versions have native support for SSDs. The operating system detects the presence of an SSD and optimizes operation accordingly. For SSD devices Windows disables SuperFetch and ReadyBoost, boot-time and application prefetching operations. Despite the initial statement by Steven Sinofsky before the release of Windows 7, however, defragmentation is not disabled, even though its behavior on SSDs differs. One reason is the low performance of Volume Shadow Copy Service on fragmented SSDs. The second reason is to avoid reaching the practical maximum number of file fragments that a volume can handle. If this maximum is reached, subsequent attempts to write to the drive will fail with an error message.
Windows 7 also includes support for the TRIM command to reduce garbage collection for data which the operating system has already determined is no longer valid. Without support for TRIM, the SSD would be unaware of this data being invalid and would unnecessarily continue to rewrite it during garbage collection causing further wear on the SSD. It is beneficial to make some changes that prevent SSDs from being treated more like HDDs, for example cancelling defragmentation, not filling them to more than about 75% of capacity, not storing frequently written-to files such as log and temporary files on them if a hard drive is available, and enabling the TRIM process.
Windows 8.1
Windows 8.1 and later Windows systems like Windows 10 also support automatic TRIM for PCI Express SSDs based on NVMe. For Windows 7, the KB2990941 update is required for this functionality and needs to be integrated into Windows Setup using DISM if Windows 7 has to be installed on the NVMe SSD. Windows 8/8.1 also support the SCSI unmap command for USB-attached SSDs or SATA-to-USB enclosures. SCSI Unmap is a full analog of the SATA TRIM command. It is also supported over USB Attached SCSI Protocol (UASP).
The graphical Windows Disk Defagmenter in Windows 8.1 also recognizes SSDs distinctly from hard disk drives in a separate Media Type column. While Windows 7 supported automatic TRIM for internal SATA SSDs, Windows 8.1 and Windows 10 support manual TRIM (via an "Optimize" function in Disk Defragmenter) as well as automatic TRIM for SATA, NVMe and USB-attached SSDs.
ZFS
Solaris 버전 10 업데이트 6 (2008년 10월 출시), 및 OpenSolaris, Solaris Express Community Edition, Illumos, ZFS on Linux를 갖는 Linux, 및 FreeBSD 모두의 최신 버전은 SSD를 ZFS에 대해 성능 부스터로 사용할 수 있습니다. 낮은-지연시간 SSD는 ZFS Intent Log (ZIL)에 사용될 수 있으며, 여기서 그것은 SLOG으로 이름-지어집니다. 이것은 드라이브에 대한 동기 쓰기가 발생할 때마다 사용됩니다. SSD (반드시 낮은-지연시간을 갖는 것은 아님)는 읽기를 위해 데이터를 캐시하기 위해 사용되는 레벨 2 Adaptive Replacement Cache (L2ARC)에 대해 역시 사용될 수 있습니다. 단독 또는 조합하여 사용될 때, 성능에서 큰 증가는 일반적으로 보입니다.
FreeBSD
FreeBSD에 대해 ZFS는 2012년 9월 23일 TRIM에 대한 지원을 도입했습니다. 그 코드는 해제된 데이터 영역의 맵을 작성합니다; 모든 각 쓰기에서, 그 코드는 맵을 참조하고 결국 이전에 해제되었지만, 지금은 덮어-쓰기된 범위를 제거합니다. 때가 되면, TRIM이 범위를 지정하는 낮은-우선순위 스레드가 있습니다.
역시 Unix File System (UFS)는 TRIM 명령을 지원합니다.
Swap partitions
- 마이크로소프트의 이전 윈도우 사업부 사장 Steven Sinofsky에 따르면, "SSD에 배치할 페이지 파일보다 나은 파일은 거의 없습니다." 수집된 원격-측정 데이터에 따르면, 마이크로소프트는 pagefile.sys를 SSD 저장소에 대해 이상적 매칭이라는 것을 발견했습니다.
- 리눅스 스왑 파티션은 놓여-있는 블록 장치가 TRIM을 지원할 때 기본적으로 TRIM 작업을 수행하며, TRIM을 끄는 것, 또는 한-번 또는 연속 TRIM 작업 중에서 선택하는 것이 가능합니다.
- 만약 운영 시스템이 개별 스왑 파티션에서 TRIM 사용을 지원하지 않으면, 대신에 보통의 파일 시스템 내에서 스왑 파일을 사용할 수 있습니다. 예를 들어, OS X는 스왑 파티션을 지원하지 않습니다; 그것은 파일 시스템 내의 파일로 스왑하므로, 예를 들어 스왑 파일이 삭제될 때, TRIM을 사용할 수 있습니다.
- DragonFly BSD는 SSD-구성된 스왑을 역시 파일-시스템 캐시로 사용하는 것을 허용합니다. 이것은 데스크톱 및 서버 워크로드 둘 다에서 성능을 향상시키는 데 사용될 수 있습니다. bcache, dm-cache, 및 Flashcache 프로젝트는 리눅스 커널에 대해 유사한 개념을 제공합니다.
Standardization organizations
다음은 솔리드 스테이트 드라이브 (및 기타 컴퓨터 저장 장치)에 대해 표준을 만들기 위해 노력하는 표준화 조직 및 기관입니다. 아래 테이블은 솔리드-스테이트 드라이브 사용을 장려하는 조직을 역시 포함합니다. 이것은 필연적으로 완전한 목록은 아닙니다.
조직 또는 위원회 | 앞의 하위-위원회: | 목적 |
INCITS | N/A | 미국에서 ANSI와 전-세계 공동 ISO/IEC 위원회 사이의 기술 표준 활동을 조정 |
T10 | INCITS | SCSI |
T11 | INCITS | FC |
T13 | INCITS | ATA |
JEDEC | N/A | 마이크로-일렉트로닉스 산업을 위한 공개 표준과 출판물 개발 |
JC-64.8 | JEDEC | 솔리드-스테이트 드라이브 표준과 출판물에 중점을 둠 |
NVMHCI | N/A | 비-휘발성 메모리 하위-시스템을 위한 표준 소프트웨어와 하드웨어 프로그래밍 인터페이스를 제공 |
SATA-IO | N/A | 업계에 SATA 사양 구현에 대한 지침 및 지원을 제공 |
SFF Committee | N/A | 다른 표준 위원회에 의해 다루지 않을 때 주의가 요구되는 저장 산업 표준에 대한 작업 |
SNIA | N/A | 정보의 관리에서 표준, 기술, 및 교육 서비스를 개발하고 촉진 |
SSSI | SNIA | 솔리드 스테이트 저장의 성장과 성공을 육성 |
Commercialization
Availability
솔리드-스테이트 드라이브 기술은 1990년대 중반부터 군사 및 틈새 산업 시장에 판매되어 왔습니다.
떠오르는 엔터프라이즈 시장과 함께, SSD는 울트라-모바일 PC와 몇 가지 경량 노트북 시스템에 등장하여, 용량, 형식 규격 및 전송 속도에 따라 랩탑의 가격을 크게 증가시켰습니다. 저가형 응용에 대해, USB 플래시 드라이브는 용량과 속도에 따라 $10에서 $100 정도의 가격으로 구입할 수 있습니다; 대안적으로, CompactFlash 카드는 유사한 비용으로 CF-to-IDE 또는 CF-to-SATA 변환기와 쌍을 이룰 수 있습니다. 이들 중 하나는 자주 쓰는 파일을 드라이브에 저장하는 것을 억제함으로써 또는 플래시 파일 시스템을 사용함으로써, 쓰기-주기 내구성 문제를 관리해야 함을 요구합니다. 표준 CompactFlash 카드는 보통 7에서 15MB/s의 쓰기 속도를 가지지만 더 비싼 고급 카드는 60MB/s까지의 속도를 주장합니다.
출시된 최초의 플래시-메모리 SSD 기반 PC는 Sony Vaio UX90으로, 2006년 6월 27일에 선주문을 위해 발표되었었고 2006년 7월 3일에 16GB 플래시 메모리 하드 드라이브와 함께 일본에서 배송되기 시작했습니다. 2006년 9월 말에서, 소니는 Vaio UX90에서 SSD를 32GB로 업그레이드했습니다.
SSD의 첫 번째 주류 릴리스 중 하나는 One Laptop Per Child 프로젝트의 일부로 구축된 XO 랩탑이었습니다. 개발 도상국 어린이를 위해 제작된, 이들 컴퓨터의 양산은 2007년 12월에 시작되었습니다. 이들 컴퓨터는 1,024MiB SLC NAND 플래시를 기본 스토리지로 사용하며, 일반적으로 사용될 것으로 예상되는 조건보다 더 가혹한 환경에 보다 적합하다고 여겨졌습니다. 델은 2007년 4월 26일부터 SanDisk SSD를 탑재한 울트라-포터블 랩탑을 배송하기 시작했습니다. 에이수스는 2007년 10월 16일 2, 4 또는 8 기가바이트의 플래시 메모리를 탑재한 Eee PC 서브-노트북을 출시했습니다. 2008년 1월 31일에서, 애플은 64GB SSD 옵션을 포함한 얇은 랩북, MacBook Air를 출시했습니다. 애플 스토어 비용은 80GB 4200RPM 하드 디스크 드라이브의 그것과 비교할 때, 이 옵션에 대해 $999 더 비쌌습니다. 또 다른 옵션, 64 기가바이트 SSD를 탑재한 Lenovo ThinkPad X300은 2008년 2월 Lenovo에 의해 발표했습니다. 2008년 8월 26일에서, Lenovo는 128GB SSD 옵션을 포함된 ThinkPad X301을 출시하여 대략적으로 $200를 추가했습니다.
2008년에서, 저가형 노트북이 SSD와 함께 등장했습니다. 2009년에서, SSD가 노트북에 등장하기 시작했습니다.
2008년 1월 14일에서, EMC Corporation (EMC)는 Symmetrix DMX 시스템에 대해 STEC, STEC, Inc.의 Zeus-IOPS SSD를 선택했다고 발표했을 때 플래시-기반 SSD를 제품 포트폴리오에 포함시킨 최초의 엔터프라이즈 스토리지 공급업체가 되었습니다. 2008년에서, Sun은 SSD에 의해 제공하는 속도와 전통적인 HDD에 의해 제공되는 경제성과 용량의 이점을 취하기 위해 솔리드 스테이트 드라이브와 전통적인 하드 드라이브 둘 다를 사용하는 Sun Storage 7000 Unified Storage Systems (코드명 Amber Road)을 출시했습니다.
델은 2009년 1월부터 일부 노트북 모델에 선택적 256GB 솔리드 스테이트 드라이브를 제공하기 시작했습니다. 2009년 5월에서, Toshiba는 512GB SSD를 장착한 랩탑을 출시했습니다.
2010년 10월부터, 애플의 MacBook Air 제품군은 솔리드 스테이트 드라이브를 표준으로 사용해 왔습니다. 2010년 12월에서, OCZ RevoDrive X2 PCIe SSD는 100GB에서 960GB 용량으로 제공되어 740MB/s 이상의 순차 속도와 최대 120,000 IOPS의 임의의 작은 파일 쓰기를 제공합니다. 2010년 11월에서, Fusion-io는 5.12TB의 저장 공간, 6.0GB/s의 읽기 속도, 4.4GB/s의 쓰기 속도 및 30 밀리초의 낮은 지연 시간을 갖춘 PCI-Express x16 Gen 2.0 인터페이스를 활용하는 ioDrive Octal이라는 최고 성능의 SSD 드라이브를 출시했습니다. 그것은 1.19M 읽기 512 바이트 IOPS 및 1.18M 쓰기 512 바이트 IOPS를 가집니다.
2011년에서, 인텔의 울트라북 사양에 기반한 컴퓨터가 출시되었습니다. 이들 사양은 울트라북이 SSD를 사용하도록 지정합니다. 이들은 소비자-수준의 장치이고 (엔터프라이즈 사용자를 대상으로 한 많은 이전 플래시 제품과는 달리), MacBook Air를 제외하고 SSD를 사용하는 최초의 널리 사용-가능한 소비자 컴퓨터입니다. CES 2012에서, OCZ Technology는 6.5GB/s 및 140만 IOPS의 전송 속도에 도달할 수 있는 R4 CloudServ PCIe SSD를 시연했습니다. 역시 PCI Express x16 Gen 3.0을 사용하여 7.2GB/s 및 250만 IOPS의 전송 속도에 도달할 수 있는 최대 12TB의 용량으로 제공되는 Z-Drive R5도 발표되었습니다.
2013년 12월에서, 삼성은 업계 최초로 1TB mSATA SSD를 소개하고 출시했습니다. 2015년 8월에서, 삼성은 그 당시에 임의의 유형의 세계 최대 용량 단일 저장 장치, 16TB SSD를 발표했습니다.
많은 회사가 2018년 현재 SSD 장치를 제공하지만 SSD를 제공하는 회사 중 실제로 SSD의 저장 요소인 낸드 플래시 장치를 제조하는 회사는 5개뿐입니다.
Quality and performance
일반적으로, 임의의 특정 장치의 성능은 다른 작동하는 조건에서 크게 변할 수 있습니다. 예를 들어, 저장 장치에 접근하는 병렬 스레드의 숫자, I/O 블록 크기, 및 남은 여유 공간의 양은 모두 장치의 성능 (즉, 전송 속도)을 극적으로 바꿀 수 있습니다.
SSD 기술은 빠르게 발전되어 왔습니다. 회전 미디어를 갖는 디스크 드라이브에서 사용되는 대부분의 성능 측정은 역시 SSD에 사용됩니다. 플래시-기반 SSD의 성능은 다양한 조건으로 인해 벤치마킹하기 어렵습니다. Xssist에 의해 2010년에서 수행된 테스트에서, IOmeter, 4KB 임의 70% 읽기/30% 쓰기, 대기열 깊이 4를 사용하여, Intel X25-E 64GB G1에서 제공하는 IOPS는 약 10,000 IOP에서 시작했었고, 8분 후에 4,000 IOPS로 급격히 떨어졌었고, 그다음 42분에 대해 점진적으로 계속 감소했습니다. IOPS는 8시간 이상 테스트 실행의 나머지 기간 동안 약 50분 이후부터 3,000에서 4,000 사이에서 변합니다.
엔터프라이즈-등급 플래시 드라이브의 설계자는 과잉-프로비저닝을 늘리고 마모 수준화를 사용함으로써 수명을 늘리려고 시도합니다.
Sales
SSD 출하량은 2009년에서 1,100만 대, 2011년에서 1,730만 대 총 50억 달러, 2012년에서 3,900 만 대, 및 2013년에서 8,300만 대, 2016년에서 2 억 1,400만 대, 2017년에서 2억 2천 6백만 대까지 증가할 것으로 예상됩니다.
전 세계 SSD 시장 (저비용 PC 솔루션 포함)에 대해 수익은 2008년 총 5억 5,800만 달러로 2007년 2억 5,900만 달러에서 100% 이상 증가했습니다.
Further reading
- "Solid-state revolution: in-depth on how SSDs really work". Lee Hutchinson. Ars Technica. June 4, 2012.
- Mai Zheng, Joseph Tucek, Feng Qin, Mark Lillibridge, "Understanding the Robustness of SSDs under Power Fault", FAST'13
- Cheng Li, Philip Shilane, Fred Douglis, Hyong Shim, Stephen Smaldone, Grant Wallace, "Nitro: A Capacity-Optimized SSD Cache for Primary Storage", USENIX ATC'14
External links
Background and general
- StorageReview.com SSD Guide
- A guide to understanding Solid State Drives
- SSDs versus laptop HDDs and upgrade experiences
- Understanding SSDs and New Drives from OCZ
- Charting the 30 Year Rise of the Solid State Disk Market
- Investigation: Is Your SSD More Reliable Than A Hard Drive? - long term SSD reliability review
- SSD return rates review by manufacturer (2012), hardware.fr - French (English) a 2012 update of a 2010 report based on data from a leading French tech retailer
- Enterprise SSD Form Factor Version 1.0a, SSD Form Factor Work Group, December 12, 2012
Other
- Ted Tso - Aligning filesystems to an SSD's erase block size
- JEDEC Continues SSD Standardization Efforts
- Linux & NVM: File and Storage System Challenges (PDF)
- Linux and SSD Optimization
- Understanding the Robustness of SSDs under Power Fault (USENIX 2013, by Mai Zheng, Joseph Tucek, Feng Qin and Mark Lillibridge)
- SSD vs. m.2, FrugalGaming, by James Heinfield