본문 바로가기

IT TREND

최적의 엔터프라이즈 플래시 스토리지 선택법 5가지


최근 한국IDC에 따르면 2015년 국내 올플래시 스토리지 시장 규모는 560억 원으로, 2014년의 370억 원에 비해 약 50% 성장할 것이라고 한다. 올플래시 스토리지가 IT 업계에서는 보기 드물게 고속 성장이 진행중인 분야인 것만은 사실이다.


그러나 엔터프라이즈 환경에서라면 얘기가 다르다. 일례로, 한국IDG가 조사한 2015년 국내 기업의 플래시 스토리지 도입 현황을 보면, 플래시 스토리지를 도입했다는 응답은 13%에 불과했다. 응답 기업 중 10% 미만의 낮은 도입률을 보인 중소기업들을 제외하고도 도입률은 25% 내외다. 아직은 가야 할 길이 멀다. 전문가들은 그 이유를 가격과 함께 플래시 메모리가 가지고 있는 기술적인 한계 때문이라고 지적한다.


플래시 메모리는 쓰기 제한으로 내구성이 낮으며, 웨어 레벨링이나 가비지 콜렉션 등 성능 저하를 막는 기술이 발전하고 있어도 보완해야 하는 부분이 아직은 많다. 따라서 엔터프라이즈 환경에 플래시 스토리지 플랫폼 도입을 검토 중인 기업이라면 디바이스 아키텍처, 시스템 아키텍처, 데이터센터 아키텍처, 성능, 그리고 경제성 등 다섯 가지를 꼼꼼하게 체크하기 바란다.



Choice 01 / 디바이스 아키텍처 - 플래시의 성능을 최대로 끌어 올리는 아키텍처인가

플래시는 놀랄 만한 성능을 제공하지만 기업에서 플래시 스토리지 도입을 고려한다면 플래시 디바이스 아키텍처에 대해 다각적으로 검토해야 한다.


먼저 신뢰성과 플래시 메모리의 수명을 고려해야 한다. 내구성 측면에서는 SLC(Single Level Cell) 플래시가 MLC(Multi Level Cell) 플래시보다 우수한 성능을 자랑하지만 가격은 훨씬 더 고가다. 향상된 디바이스 아키텍처를 갖고 있는 MLC는 신뢰성이 높으며 플래시 미디어의 수명을 단축시키고 성능 저하의 원인이 되는 쓰기 증폭 현상(Write amplification: 플래시 페이지의 다시 쓰기 작업과 가비지 콜렉션을 위한 페이지 다시 쓰기 작업 등으로 인해 생기는 현상)을 줄일 수 있다. 특정 페이지에 데이터가 집중적으로 몰리지 않고 골고루 분배되도록 하는 웨어 레벨링 기능을 통해 내구성을 높일 수도 있다.


PC에 사용되는 상용 플래시 디바이스에 비해 엔터프라이즈 플래시 디바이스는 더 많은 프로세싱을 요구한다. 스페어(Spare)[각주:1] 관리, 유효 페이지 인덱싱[각주:2], 웨어 레벨링[각주:3] 및 확장된 에러 수정(ECC) 프로세싱[각주:4] 등은 전력 소모가 많기 때문이다. 입출력(I/O) 프로세싱의 성능 저하는 곧 스토리지 성능의 하락으로 이어진다. 플래시 디바이스의 경우 하우스키핑(Housekeeping)[각주:5] 기능을 수행할 때, 또는 쓰기 작업이 과중할 때 입출력(I/O) 프로세싱의 성능 저하, 즉 쓰기 절벽(Write Cliff) 현상이 발생한다. 쓰기 절벽 현상이 발생하면 플래시 스토리지의 하우스키핑 기능이 스토리지 성능에 심각한 영향을 미칠 수 있다. 디바이스 컨트롤러가 하우스키핑 기능과 쓰기 프로세싱 간의 충돌을 피할 수 있는 멀티 프로세싱 경로를 지원한다면 이런 문제를 피해갈 수 있을 것이다.



대량 생산이 목적인 PC용으로 설계된 플래시 디바이스는 기가바이트 정도만 지원할 수 있는 저가 프로세서를 사용한다. 그러나 엔터프라이즈 스토리지 시스템이라면 얘기가 달라진다. 테라바이트까지 지원할 수 있는 프로세싱 파워가 반드시 필요하다. 플래시 디바이스 아키텍처와 관련해 주의 깊게 살펴봐야 할 기능들은 아래와 같다.



- 더 높은 집적도와 일관된 성능을 지원하는 멀티패싱(Multipathing) 프로세서가 탑재되어 있는지 여부


- 한층 향상된 에러 체킹을 통해 신뢰성을 향상할 수 있도록 설계되었는지 여부


- 쓰기 증폭 현상을 최소화하고 혁신적인 웨어 레벨링을 통해 내구성을 향상시켜 수명 연장이 가능한지 여부


- 쓰기 절벽(Write cliff)이 발생하지 않도록 입출력(I/O) 경로에서 가비지 컬렉션(Garbage collection)과 하우스키핑을 수행하는지 여부


- 구역 쓰기(Block write) 방지 기능으로 불필요한 쓰기/삭제 반복을 제거하는지 여부(플래시 메모리의 기대 수명을 늘릴 수 있는 방법)




Choice 02 / 스토리지 시스템 아키텍처 - 기업내 스토리지ㆍ애플리케이션 환경과의 통합 정도를 살펴라

플래시 스토리지 솔루션을 기업의 기존 스토리지 솔루션 및 애플리케이션 환경에 어떻게 통합할 것인가? 많은 플래시 스토리지 시스템이 개별적으로 관리되는 스탠드얼론 어플라이언스로 판매되고 있어 기존 환경과의 통합이 쉽지 않다. HDD용으로 설계된 스토리지 시스템에 플래시를 연결하면 어플라이언스에서 스토리지 성능 저하 현상이 나타날 수 있다. 플래시 플랫폼의 시스템 아키텍처를 잘 보면 디바이스 내 입출력(I/O) 병목 현상을 해결하는 방법이 보인다.



- 기업의 비즈니스 수요에 맞게 기존의 스토리지 자원과 플래시가 적절히 통합되는 플랫폼인가. 

통합 후 스토리지 관리와 관련된 또 다른 문제가 발생하는 것이 아니라 스토리지 투자를 극대화할 수 있어야 한다.


- 애플리케이션이 최적의 성능을 유지할 수 있도록 보장하면서도 비즈니스 수요에 맞게 스토리지를 증가시킬 수 있도록 스케일업과 스케일아웃을 지원하는 플랫폼인가.


- 기업 내 모든 시스템과 스토리지 타입을 관리할 수 있는 단일 소프트웨어 플랫폼인가.


- 데이터 암호화를 지원하는 플래시 스토리지 시스템인가. 

셀프 암호화를 수행하는 HDD와 달리 플래시 드라이브는 스토리지 시스템이 암호화를 수행해야 한다. 플래시 드라이브는 쓰기 작업 시 늘 새 페이지로 이동하므로 덮어쓰기(Overwriting) 방식의 파쇄(Shredding)가 불가능하다. 암호화는 암호 키를 파쇄하는 것으로 플래시 드라이브의 파쇄 문제를 해결한다. 일명 암호 파쇄(Crypto shredding) 활동이다. 안전한 플래시 스토리지 시스템이라면 암호화 로깅과 준수성 감사(Compliance and auditing)를 위한 키 관리 이벤트를 지원할 것이다. 이 기능을 지원하지 않는 플래시 스토리지 시스템이라면 중요한 데이터라도 신뢰하지 말라.



Choice 03 / 데이터센터 아키텍처 - 기업 데이터센터와 최적의 조화를 이루는 기능을 제공하는가?

플래시 디바이스와 스토리지 시스템 아키텍처뿐 아니라 기업의 기존 데이터센터와 어떻게 조화를 이루는가도 플래시 스토리지 플랫폼 선택 시 중요한 요소 중 하나다.


- 다이내믹 티어링 지원 여부

하이브리드 아키텍처가 플래시의 성능과 디스크의 가용성을 높이기 위해 최적화된 티어링 기능을 제공해야 한다. 다이내믹 티어링은 중요성이 덜한 데이터는 좀 더 저렴한 HDD 어레이로 이동시키고, 가장 중요한 데이터는 고성능 플래시 어레이에 저장될 수 있도록 해준다. 효과적인 다이내믹 티어링 시스템은 스토리지 계층간 무중단 데이터 통합 기능도 제공한다.


- 데이터 보호 기능

데이터 보호는 데이터센터 아키텍처의 핵심이다. 여기에는 적시(Point-in-time) 복구와 스냅샷과 클론(Clones)을 생성할 수 있는 무중단 백업 기능 등이 포함된다. 재해 발생시 복구 시점과 복구시간의 단축을 위한 동기 및 비동기 데이터 복제 기능도 중요한 판단 요소다.


- 메인프레임 지원 여부

메인프레임은 금융, 통신, 공공설비 등 주요 산업 분야에서 여전히 핵심 애플리케이션으로 운영되고 있다. 메인프레임은 고성능 플래시의 이점을 최대한으로 누릴 수 있는 애플리케이션이다.




Choice 04 / 성능 - 벤치마킹과 성능 보고서 제대로 평가하기

플래시 스토리지 시스템을 선정하기 위해 다양한 벤치마킹 자료와 성능보고서를 찾아 비교하다 보면 혼란스러움을 느낄 수 있다. 중요한 비즈니스 애플리케이션을 최고의 환경에서 운영하고자 한다면 벤치마킹과 성능보고서를 신중하게 평가해야 한다. 플래시 벤치마킹 자료를 검토할 때 다음의 몇 가지 사항을 주의하자.



- 해당 벤더가 벤치마킹 시 사용한 방법론과 레퍼런스 플랫폼을 정확히 명시했나?


- 해당 벤더가 실제와 동일한 조건, 애플리케이션 환경, 작업량을 기반으로 테스트를 수행했나?


- 해당 벤더의 성능 통계 자료에 담긴 주요 내용이 무엇인가?

플래시 스토리지 벤치마킹 자료는 대부분 IOPS(초당 입출력 처리량)에 대해 언급하지만 응답속도(Latency) 역시 성능 벤치마킹에서 빠져서는 안 되는 핵심 요소다.




Choice 05 / 경제성 - 고성능 스토리지 도입 시 평가의 잣대 적용

중요한 업무용 애플리케이션에 사용할 고성능 스토리지 도입 시 운영비용 등 경제성을 도외시한 채 성능만 고려할 것인가. 올바른 플래시 스토리지 시스템 선택을 위해 살펴봐야 할 몇 가지 요소는 다음과 같다.



- 가격 대비 성능

1,000분의 1초 미만의 응답속도(Sub-millisecond latency)를 요구하는 데이터와 애플리케이션에 대해 플래시 스토리지가 비용 효율적인 옵션이 될 수 있는지 여부를 판단하라.


- 데이터센터 활용성을 높여주는 스토리지 집적도와 프로세싱 파워

SSD(Solid State Disk) 또는 기존의 HDD에 비해 차지하는 랙 공간이 적은가. 그리고 테라바이트 스토리지를 지원할 수 있는 프로세싱 파워를 제공하는가.


- 비용 효율성

기가바이트당 입출력 처리량(IOPS/GB)으로 측정되는 플래시 스토리지 시스템의 입출력(I/O)률. 플래시 시스템의 비용 효율성을 체크하기 위해 일반적으로 측정하는 방식은 입출력(I/O)당 소요비용이다.


- 다이내믹 티어링

다이내믹 티어링은 더욱 효율적인 데이터센터 운영을 위해 디스크 스토리지의 가격은 낮추면서도 중요한 비즈니스 데이터에 대한 플래시 가용량을 충분히 확보할 수 있도록 해준다. 다이내믹 티어링기능을 사용할 수 있다면 플래시 시스템의 데이터 중복 제거의 이점도 누릴 수 있다.




오래된 플래시 드라이브, 어떻게 폐기할 것인가?


시간이 참 빠르다. 200~400GB SSD(Solid State Disk)를 처음 구매한 게 불과 4~5년 전인데 지금은 많은 기업들이 속도도 더 빠르고 경제성까지 갖춘 TB(테라바이트급) 플래시 드라이브로 교체하고 있다. 특히 훨씬 더 고가의 SLC SSD를 구입한 경우라면 더욱 그럴 것이다. 기술 발전은 놀라울 정도로 빠르게 진행됐고, 내구성에 대한 우려는 웨어 레벨링과 몇 가지 관리 기술을 통해 해소되었다. 기존의 SSD를 교체하는 데 장애요소가 사라진 것이다. 그렇다면 폐기된 SSD는 어떻게 처리할 것인가? 전산 폐기물과 관련한 법률로 인해 사용하지 않는 SSD를 그냥 쓰레기통에 버릴 수는 없다. 벤더에게 회수를 요청하거나, 전산 폐기물 전문업체에 넘기거나, 혹은 중고 시장에서 되파는 방법 등이 있을 수 있다.


플래시 미디어에 저장된 데이터 완전히 삭제

그러나 SSD 혹은 플래시 드라이브는 폐기하기 전에 플래시 미디어에 저장된 데이터를 완전히 삭제해야 한다. 폐기 대상이 플래시 미디어라면 더욱 골치가 아프다. 미디어가 암호화돼 있다면 암호 키를 파쇄(Shredding)하는 정도에서 간단히 끝날 수 있지만 대형 은행 등 규제 대상 기업이라면 암호 파쇄 이상으로 완전삭제를 해야 할 수도 있다. 물론 암호화도 데이터 유출 방지를 위한 좋은 솔루션이지만 안전한 데이터 삭제가 보장되지 않으면 100% 안심할 수 없다.


플래시 미디어와 관련한 골칫거리는 디스크 드라이브처럼 데이터 덮어쓰기와 삭제가 불가능하다는 데 있다. 플래시는 늘 새롭게 포맷된 블록에 데이터를 기록하기 때문이다. 또 다른 문제는 내구성 향상을 위해 사용하는 웨어 레벨링(Wear leveling)이다. 웨어 레벨링은 스페어(Spare) 사용을 위한 컨트롤러에 비해 10~30% 이상의 가용성을 갖는 플래시 미디어를 필요로 한다. 일반적인 SCSI 명령을 사용하는 컨트롤러는 데이터가 기록된 전체 블록을 파악하는 게 불가능하다. 실제로 데이터가 600GB에 걸쳐 기록될 때 리포팅된 400GB만 볼 수 있을 뿐이다.


3가지 포인트 ‘데이터 보호ㆍ고객 정보 보호ㆍ환경 보호’

HDS(Hitachi Data Systems)는 플래시 미디어에 사용되는 컨트롤러뿐 아니라 스토리지 시스템 컨트롤러를 만드는 기업이다. 따라서 일반적인 디바이스 인터페이스에서는 볼 수 없는 블록의 셀을 포함해 플래시 셀 전체를 삭제하도록 FMD(Flash Module Drive) 컨트롤러에 특정 명령을 부여할 수 있다. 뿐만 아니라 데이터 흔적이 남아있는지 여부를 파악하고 감사를 위해 스토리지 컨트롤러로 돌아가 리포팅할 수 있도록 전체 블록을 읽을 수 있는 플래시 셀의 삭제도 가능하다. 스토리지 컨트롤러에 연결된 모든 종류의 SSD 또는 FMD에 대해 암호화 및 암호 키 파쇄(Shred)를 수행하고 로그를 통해 돌아가 리포팅할 수도 있다.


HDS가 제작한 FMD의 데이터는 충분히 삭제할 수 있지만 규제 대상 기업들의 경우 대부분 써드파티가 이 작업을 수행하도록 관련 법률에 명시돼 있다. 이 때문에 HDS는 Hitachi FMD 드라이브의 데이터 삭제를 위해 HDS 고유 명령을 사용할 수 있는 데이터 삭제 전문 기업인 리버트(Revert)와 협력관계를 맺고 있다.


기업은 언제라도 물리적인 방법으로 SSD와 FMD를 파쇄할 수 있지만 전산 폐기물은 적절한 재활용과 폐기 처분이 필요하다는 사실을 기억해두기 바란다. 대부분의 SSD는 엄격한 가이드라인에 따라 폐기 처분해야 하는 리튬 배터리를 사용한다. HDS FMD는 리튬 배터리의 노출 위험을 피하기 위해 콘덴서를 사용한다. 플래시 디바이스를 폐기할 때는 기존 데이터 보호, 고객 정보 보호, 환경 보호 이 세 가지를 반드시 염두에 두기 바란다.





  1. 1) 스페어(Spare): RAID로 묶인 디스크 중 일부에 문제가 발생해 정상 구동이 어려운 상황에 즉각 대체할 수 있는 디스크 [본문으로]
  2. 2) 유효 페이지 인덱싱: 플래시 미디어는 블록 내 페이지가 업데이트 되는 경우 새로운 포맷 페이지에 쓰기 작업이 이루어지고 이전 페이지는 더 이상 사용되지 않는다. 유효하지 않은 각각의 페이지로 블록이 가득 차게 되면 용량을 복구하기 위해 ‘가비지 컬렉션(Garbage collection)’을 수행해야 한다. 나머지 유효한 페이지는 이전 블록이 다시 포맷되기 전까지 새로운 블록에 읽기/쓰기 작업을 수행하게 된다. [본문으로]
  3. 3) 웨어 레벨링(Wear leveling): SSD의 컨트롤러에서 자체적으로 지원하는 기능으로, 셀을 골고루 돌아가면서 읽기/쓰기를 할 수 있도록 하는 기능 [본문으로]
  4. 4) ECC(Error Correcting Code): 에러정정코드. 비트 전송 때 자동으로 에러를 정정하는 코드를 말한다. MLC의 경우는 1KB당 24bit의 ECC 값을 갖는다. [본문으로]
  5. 5) 하우스키핑(Housekeeping): SSD의 내부적으로 삭제된 영역을 관리하기 위한 리프레시와 기타 웨어레벨링을 관리하는 작업 [본문으로]