본문 바로가기

TECH ZOOM

IOPS에 대한 오해와 진실



 

VSP G1000은 SPC(스토리지 성능 위원회) 기준으로 2백만 IOPs를 기록하며 기타 올플래시 어레이 벤더들의 추종을 불허하는 성능을 제공합니다. (참고. HDS Lab 테스트 기준은 4백 2십만 IOPs) VSP G1000의 이러한 월등한 기록 덕분에 인터넷 상에서는 성능 지표로서의 IOP에 대한 갑론을박이 끊이지 않고 있는데요, 이번 포스팅에서는 IOPs에 대한 오해와 진실을 알아보도록 하겠습니다.




MYTH #1: IOPS는 상대적일 수 없다?


IOPS 자체가 상대적이지 않다는 것에는 동의합니다. 그러나 응답 시간, 워크로드, 비용 등을 고려하여 측정했을 때 IOPs는 충분히 상대적입니다. 업계에서는 VSP G1000의 2백만 IOPS에 주목하였으나, 사실 보다 중요한 것은 독립기관인 SPC(스토리지 성능 위원회)에서 설계한 100% 로드에서 0.96ms의 평균 응답 속도를 유지했다는 것입니다. 즉 비즈니스 크리티컬 애플리케이션의 대표적인 기능들을 수행하는 사례에 대해 스토리지 서브시스템의 성능을 입증한 것입니다. 이 정도 수준의 IOPs에 해당하는 비용은 SPC-1 IOPs당 1달러의 가치로 환산됩니다. 테스트에 사용된 모든 제품들에 동일한 워크로드가 적용되었으며, SPC에서 테스트 결과 및 구성을 보증합니다.



위의 SPC-1 결과에서 IBM Power 780은 HUS VM 보다 높은 IOPs를 기록하였으나 응답 시간에는 차이가 있는 것을 보실 수 있습니다. 특히 100% 로드 시점에서는 차이가 더욱 벌어집니다. 이와 같은 IOPs 비교로는 실질적인 전체 성능 차이를 확인하기 어려울 것입니다.




MYTH #2: 로컬 스토리지가 공유 스토리지 보다 빠르다?


로컬 스토리지와 연결된 컴퓨팅 시스템은 여러 개의 컴퓨팅 플랫폼을 공유하는 외장형 스토리지에 비해 과부하가 낮은 것으로 알려져 있습니다. 호스트 버스 어댑터, 네트워크(SAN), 스토리지 컨트롤러 등의 과부하가 제거된 로컬 스토리지는 공유 스토리지에 비해 더 빠르고 낮은 비용으로 운영이 가능합니다. 실제로 fibre 채널과 로컬 버스를 비교할 경우 마이크로-세컨드 단위의 차이가 발생하지만 SSD의 경우 플래시 미디어 프로그래밍을 관리하는 소프트웨어 및 하드웨어 설계에 따라 밀리-세컨드 단위까지도 차이가 발생합니다. 웨어 레벨링(wear leveling), 블록/페이지 맵핑, 블록 교정, 페이지 포맷, ECC 확장, 내구성 관리, 쓰기 증폭 등이 바로 이러한 차이를 발생시키는 요인들 입니다. 이러한 요소들을 여러 개의 컴퓨팅 플랫폼에서 공유하는 외장 컨트롤러로 오프로드 시키지 않는 경우 각각의 컴퓨팅 플랫폼에서 이 작업들을 수행해야 할 것입니다. 외장 스토리지는 또한 RAID, 원격 복제, 액티브/액티브 등의 데이터 가용성을 위한 추가 기능을 제공하기도 합니다. 그러므로 SSD의 위치보다는 어떤 하드웨어 및 소프트웨어의 조합으로 이루어져 있는지, 성능, 확장성, 가용성에 대한 요구수준이 어떠한지를 더 중요하게 파악해야 합니다. 아래의 SPC-1 차트를 통해 로컬 SSD가 부착된 IBM Power 780 서버와 64 플래시 모듈이 부착된 VSP G1000의 가성비를 확인해보시기 바랍니다. 100% 로드에서 응답 시간에 차이가 발생할 뿐만 아니라 SPC-1 IOPS당 비용도 훨씬 낮은 것을 확인하실 수 있습니다.





MYTH #3: 하이퍼 컨버지드 스케일-아웃 시스템도 스케일-업 시스템 수준의 성능을 제공할 수 있다?


VMware는 Virtual SAN 5.5를 출시하며 연속적으로 2백만 IOPS까지 확장이 가능하다고 밝힌바 있습니다. 마케팅적인 측면에서 하드웨어 오프로드의 가치가 떨어졌음을 주장한 것이죠. 상용 서버와 내장 SSD 및 HDD 구성의 VMware Virtual SAN으로 2백만 IOPS를 보장할 수 있다면 VSP G1000을 구매하는 것이 어떤 의미가 있을까요? VMware의 해당 수치에 대한 근거는 100% 읽기 로드에 대한 IOmeter 워크로드에 있으며 보다 자세한 내용은 VMware 블로그에서 확인하실 수 있습니다.

통상적으로 VMware 클러스터의 표준 성능 측정에는 VMmark가 사용됩니다. ‘DVD 스토어’ 및 메일 서버 시뮬레이션이 혼합된 워크로드를 적용하는 방식입니다.

VMware는 기존의 널리 알려진 이러한 테스트 워크로드 대신 마케팅적인 측면에서 각각의 노드에 로컬 SSD의 읽기 데이터만을 측정하는 IOmeter를 사용했다는 사실을 인지할 필요가 있습니다. 즉 미러링을 차단하여 데이터가 노드를 통과할 수 없도록 구성하였으나, 이 경우 노드 에러 발생 시 여유 공간이 없게 됩니다. 벤치마크에 사용된 각각의 VSAN 노드가 독립 스토리지 유닛으로 작동하므로, 이 구성에서는 당연히 선형적인 스케일에 가까운 성능을 보장할 수 있습니다. 그러나 Virtual SAN의 본래 목적은 FC SAN 없이도 모든 VM에서 데이터에 접근할 수 있는 단일 공유 데이터 저장소를 생성하는 것입니다. 모든 I/O가 로컬에서 인위적인 워크로드로 발생할 수 없다는 점을 감안하면 이러한 방식의 데모에 큰 의미가 없다는 것을 알 수 있습니다.





Virtual SAN의 목적이 노드 간 워크로드를 확장하는 것이라면 이 테스트는 적절하지 않은 것으로 보입니다. 내부 SSD에서 노드 외부의 데이터를 읽었기에 각각의 I/O에 대한 응답 시간이 우수하게 측정되었을 것입니다. 실제로 100% 읽기 상황에 대한 응답시간은 표시되지 않았으며, 70/30 비율의 읽기/쓰기 혼합 로드에서 IOPs가 640k로 떨어지며 전체 레이턴시(aggregate latency)가 2.98ms를 기록한 것을 확인하실 수 있습니다.

이러한 단순한 워크로드와 달리 SPC-1 워크로드 생성기는 실제 운영 환경에서 발생하는 다양한 I/O 액세스 패턴을 제공합니다. 랜덤, 순차, 계층 구조 재사용 환경의 랜덤워크 등 다양한 패턴과 규모에 변화를 주는 것은 물론이고, 실제 현장에서의 읽기/쓰기 비율 및 도착 분포도, 데이터 지역성(data locality), 전송 규모 등을 반영합니다. 스토리지 성능 위원회(SPC)에서 정의한 이러한 워크로드를 기준으로 하였을 때 VSP G1000은 2백만 IOPS와 100% 로드에서 1ms 이하의 응답시간을 기록했습니다.

VSAN은 분명히 특정 환경에서는 우수한 솔루션입니다. Hitachi는 VMware와의 파트너십을 통해 하이퍼 컨버지드 형태의 VSAN을 사용하는 VMware 어플라이언스 EVO Rail을 공급하고 있습니다. 이 솔루션은 보다 단순한 구조의 스케일-아웃 아키텍처를 합리적인 비용으로 신속하게 구성하고자 할 때 가장 적합한 제품으로, 첫 번째 Hitachi EVO:RAIL 어플라이언스는 2U, 4노드 구성의 16TB 내장 스토리지로 공급될 예정입니다.




IOPS에 대한 진실


성능 측정 지표로서의 IOPS는 응답 시간과 비용의 상호 연관성이 적절하게 정의된 워크로드를 기준으로 할 때 상대적이라고 할 수 없습니다. 상대적인 성능을 가장 정확하게 측정하는 방법은 비교하고자 하는 제품들의 구성이 완전하게 공개된 상태에서, 실제 운영 환경과 유사한 일반적인 워크로드를 적용시켜야 하며, 독립적인 써드파티 기관에서 테스트 결과를 입증하는 것입니다. 그리고 이러한 조건들을 만족시킨 테스트가 바로 SPC-1 벤치마크이며, 기업에서 스토리지 구매 시 성능 비교의 지표로 SPC-1 결과를 반드시 참고해야 하는 이유입니다.