ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [IBM] 시스템의 성능과 운영의 효율성을 결정짓는 핵심요소, 레이턴시. IBM의 FlashSystem은 어떻게 낮은 레이턴시를 제공할까?
    IT topics 2014. 8. 12. 10:09
    반응형

    데스크탑이나 노트북과 같은 개인용 PC에서나, 아니면 서버 시스템, 혹은 모바일 디바이스에서 업무를 하는데 있어서 무엇보다 중요한 것은 다름아닌 처리속도, 체감속도일 것이다. 성능과 속도는 어떻게 보면 완전히 같다고 볼 수는 없지만 사용자 입장에서 볼 때 속도가 빠르다는 것은 그만큼 성능이 우수하다는 것으로 생각하기 쉽고 실제로 수많은 PC 업체들이나 모바일 단말기 업체들이 속도가 빠르다는 것을 장점으로 내세우는 마케팅을 진행하고 있는 것이 사실임은 분명하다. 어찌되었던 어떤 어플리케이션을 동작시키는데 있어서 어플리케이션의 반응속도는 사용자 입장에서, 또 서비스 제공자 입장에서 무척이나 중요한 요소임은 분명하다.


    레이턴시와 레이턴시를 결정하는 2가지 요소, CPU와 I/O


    레이턴시(latency). 응답시간, 대기시간의 의미로 어플리케이션을 실행할 때 걸리는 시간을 의미한다. 레이턴시가 적으면 적을수록 성능이 우수하다고 해도 틀린 말은 아닐 것이다. 수많은 제조사들과 사용자들이 자신의 시스템에서 이 레이턴시를 줄이기 위해 많은 노력을 한다. 그렇다면 이 레이턴시를 어떻게 줄일 수 있을까?


    레이턴시를 결정하는 2가지 요소는 CPU와 I/O다. 데이터를 처리하는 CPU의 속도가 빠르면 빠를수록 어플리케이션의 데이터 처리 이후 다음 데이터 처리까지 금방 수행되기 때문에 어플리케이션의 속도는 당연히 증가한다. 레이턴시가 그만큼 적어진다는 것이다. 이를 위해서 클럭 속도가 높은 CPU를 사용하기도 하고 데이터를 병렬로 처리하기 위해 듀얼코어, 쿼드코어, 헥사코어 등 멀티코어 CPU를 사용하기도 한다. 빨리 처리하고 나눠서 처리하면 그만큼 CPU에서 걸리는 병목현상(데이터 처리를 위해 기다리는 데이터가 계속 큐에 쌓여 지연시간이 길어지는 현상)이 적어지거나 없어진다.


    그리고 또 하나의 요소가 데이터를 저장장치에 저장하는 I/O인데 데이터를 저장장치에서 읽고, 또 저장장치로 쓰는 작업에서 많은 병목현상이 일어난다. 이유는 CPU에서 처리하고 메모리에서 저장해두는 속도는 비슷한데 저장장치에 저장하는, 또 읽는 속도는 상대적으로 느리기 때문이다. 특히 읽을 때보다 쓸 때의 속도가 많이 느린데 저장장치에 기록하는 것에 많은 시간이 소요되는 것이 사실이다. 그래서 I/O로 인한 레이턴시를 줄이기 위해서 RPM이 높은 HDD를 사용하던지 캐시 메모리를 활용하는 방법 등을 사용해서 I/O의 레이턴시를 줄일려는 노력들을 한다. 하지만 저장장치가 HDD일 때에는 마그네틱 디스크에 저장할 때의 속도에 한계가 존재하기 때문에 어느 수준 이상의 속도를 내기가 어려운 것이 현실이다.


    최근 각광을 받고 있는 저장장치라고 한다면 SSD를 들 수 있다. Solid State Drive(혹은 Solid State Disk)의 약자로 플래시 메모리(혹은 DRAM을 이용하는 경우도 있다고 한다)를 이용하여 HDD처럼 사용할 수 있게 만든 플래시 메모리로 만든 HDD라고 보면 된다. 저장공간이 마그네틱 디스크로 되어있는 HDD와 달리 플래시 메모리로 되어있기 때문에 무척이나 빠르다. SSD의 성능에 따라 속도의 차이는 있지만 그래도 보통 HDD보다 10배 이상, 아니 100배 이상 빠르다고 말하는 사람들이 많다. 그만큼 플래시 메모리가 갖고 있는 속도의 강점은 분명하다. 최근 I/O의 레이턴시를 줄이기 위해 SSD를 이용하는 시스템들이 많아졌다. 데스크탑이나 노트북, 서버급 시스템에서 SSD와 HDD를 함께 사용하거나 아예 SSD만 사용해서 속도를 높여서 출시하는 경우가 많다. SSD와 HDD를 같이 사용하는 경우에는 OS나 어플리케이션의 실행 파일들은 SSD에 저장해두고 데이터들은 HDD에 저장해서 부팅할 때나 어플리케이션을 실행할 때 SSD에서 실행하도록 하여 빠른 응답을 줌으로 레이턴시를 줄이는 방식을 많이 이용한다. 요즘 나오고 있는 어플라이언스 형태의 수많은 시스템들이 시스템의 레이턴시를 줄이기 위해서 SSD와 HDD를 함께 이용하는 방법을 많이 사용하기도 한다. 어찌되었던 플래시 메모리의 사용으로 레이턴시가 획기적으로 줄어든다는 사실은 분명하다고 할 수 있다.


    낮은 레이턴시가 갖는 장점


    앞서 얘기했던 것처럼 레이턴시에 중요한 요소로 꼽히는 CPU와 I/O는 CPU의 경우 시스템을 증설하여 분산처리 시킴으로 병목현상을 줄여 레이턴시를 줄일 수 있고 I/O의 경우에는 저장장치를 교체하는 방법을 이용해서 레이턴시를 줄일 수 있는데 테잎, 혹은 마그네틱 디스크로 된 저장장치를 플래시를 이용하게 함으로 획기적으로 레이턴시를 줄일 수 있다. 레이턴시가 줄어든다는 것은 그만큼 같은 시간 안에 더 많은 데이터를 처리할 수 있고 더 많은 어플리케이션을 수행시킬 수 있다는 것이기 때문에 업무 효율성와 비용의 효율성 입장에서 무척이나 중요하다고 볼 수 있다. 하나의 시스템에서 4~5개의 업무를 처리할 수 있게 한다고 했을 때 그 전에는 레이턴시가 높아서 하나의 시스템에서 1~2개 밖에 처리할 수 없었기 때문에 시스템을 2~3개를 더 둬서 처리할 수 밖에 없었지만 레이턴시가 적은 시스템을 도입함으로 하나의 시스템으로 다 처리할 수 있게 만든다는 것이다. 레이턴시가 높은 시스템 3대를 돌리는 가격과 레이턴시가 낮은 시스템 1대를 돌리는 가격을 비교해보면 1대 기준으로 봤을 때에는 레이턴시가 낮은 시스템의 가격이 더 높지만 전체의 일의 양을 고려해서 시스템을 구입하고 운영한다면 당연히 3대보다는 1대의 가격이 훨씬 저럼한 것은 당연한 것이다. 공간도 그렇고 운영에 들어가는 인적 자원의 소모도 그만큼 줄어든다고 할 수 있을 것이다.


    낮은 레이턴시를 위한 플래시 스토리지 시스템, IBM FlashSystem


    IBM의 FlashSystem. 위에서 언급했던 플래시 메모리로 구성된 저장장치인 SSD와 비슷한 역할을 하는 서버 사이드 어플리케이션 가속 솔루션이다. 스토리지의 일종이라고 보면 될 듯 싶다. 기존의 스토리지는 앞서 얘기했던 것처럼 마그네틱 디스크로 되어있는 HDD나 테잎으로 구성되어 있어서 저장장치에 읽고 쓰는 속도에 한계가 있었다. 하지만 FlashSystem은 이름 그대로 플래시 메모리를 이용하여 스토리지를 구성했기 때문에 기존 HDD로 된 스토리지보다 응답시간이 1/10000 수준으로 줄어들었다고 볼 수 있다. 속도가 빠르기 때문에 어플리케이션의 응답속도가 빠르고 데이터 처리 후 저장 속도가 빨라서 같은 시간 안에 더 많은 일을 수행할 수 있게 만들어주는 어플리케이션 가속기 역할을 담당할 수 있는 시스템이다. 시스템의 속도가 빨라지면 결과가 빨리 나오고 그만큼 의사 결정을 빨리 내릴 수 있다는 장점이 있다. 또한 앞서 얘기했던 것처럼 같은 시간 안에 더 많은 일을 할 수 있기 때문에 시스템의 증축 없이도 성능을 높일 수 있으며 이는 비용의 효율성으로 이어질 수 있고 관리자의 관리 효율을 높일 수 있다는 얘기까지 말할 수 있게 된다. 또한 기존 마그네틱 디스크 기반의 HDD에 비해 플래시는 더 적은 전력소비를 하기 때문에 이 부분에 있어서도 비용의 절감효과를 가져올 수 있다는 장점이 있다.


    FlashSystem은 전체가 모두 플래시 메모리로 구성된 스토리지 시스템이다. 앞서 SSD와 HDD를 함께 사용하는 방식을 얘기했는데 보통 하이브리드 방식이라고 불리는 이 방식은 SSD가 HDD에 비해서 가격이 상대적으로 높아서 저장공간 전체를 SSD로 하기에 가격의 부담 때문에 적당히 절충안 방식으로 나온 것으로 구동파일과 중요한 파일은 SSD에, 나머지 데이터 파일들은 HDD에 저장해서 적당히 속도를 높이는데 주력을 뒀다. 하지만 HDD 부분에 저장되어있는 데이터를 핸들링할 때에는 당연히 예전과 같은 높은 레이턴시가 갖는 문제점들을 보여주는 단점이 있다. 하지만 앞서 얘기했듯 FlashSystem은 모두 플래시 메모리로 구성되어있기 때문에 어중간한 하이브리드 방식에 비해서 높은 효과를 보여줄 수 있다. 단기적으로 봤을 때 비용적인 측면에서 하이브리드를 고민하지만 장기적인 측면으로 봤을 때에는 당장에는 가격이 부담스럽더라도 시스템의 확장 등을 고려한다면 FlashSystem과 같은 플래시 스토리지가 더 이득이라고 할 수 있다.


    특히 IBM의 FlashSystem이 다른 플래시 스토리지에 비해서 갖는 장점을 살펴본다면 낮은 레이턴시 SSD/플래시 시장에서의 35년 노하우를 갖고 있으며 플래시 기술에서는 19번쨰 세대까지 기술을 제공하고 PCIe에서 연결된 단독 형태의 플래시 솔루션을 제공한다는 장점이 있다. 그리고 1U 기기의 효과와 효율성을 따지고 본다면 25~100us의 레이턴시로 업계에서 가장 낮은 레이턴시를 기록하고 있으며, 업계에서 가장 높은 450K IOPS를 전달하는 20TB의 사용 가능 공간을 제공하고 500watts의 전원을 사용하여 업계에서 가장 높은 에너지 효율성을 보여준다. 또한 MLC 플래시가 아닌 eMLC 플래시를 사용하기 때문에 10배 이상의 내구성을 보여주고 있으며 업계에서 가장 높은 33% 추가 공급할 수 있는 용량을 제공하고 VSR & 2d Raid 방식으로 서비스 오류를 10배 가까이 최소화 시켜줄 수 있는 것이 IBM이 타사에 비해 갖는 차별점이라고 볼 수 있다.


    낮은 레이턴시를 요구하는 분야는 다양하다. 파일시스템의 메타데이터를 핸들링하는 분야나 비디오 변환, 스트리밍, 랜더링과 같은 I/O가 잦고 CPU 사용이 높은 분야에서는 낮은 레이턴시 시스템을 요구한다. 엔터프라이즈급 연구나 데이터 검색 분야에서도 낮은 레이턴시를 요구하고 있으며 특히나 보안 분야에서도 낮은 레이턴시를 요구하는데 암복호화에 사용되는 방식이 수많은 계산과 I/O가 일어나기 때문이다. 이렇듯 수많은 분야에서 낮은 레이턴시 시스템을 요구하고 있으며 IBM의 FlashSystem은 이런 요구에 대해서 BBC나 UFC, 키움증권과 같은 업체에 도입됨으로 효과를 보고 있다.


    이렇듯 레이턴시는 시스템의 성능을 좌우하는 중요한 요소이자 시스템을 운영하는데 있어서, 또 관리하는데 있어서 중요한 요소로 꼽히고 있다. 닞은 레이턴시와 플래시, 그리고 IBM의 FlashSystem이 이런 요구사항에 대해서 어떻게 대응하고 있는지를 살펴보면 시장에서 요구하고 있는 시스템의 가이드라인을 나름대로 알아낼 수 있지 않을까 싶다. 참고로 IBM의 FlashSystem에 대해서 더 알고 싶다면 [여기]에서 확인하기 바란다.


    "이 포스팅은 한국 IBM의 의뢰로 원고료를 받고 작성되었습니다"

    반응형

    댓글

Designed by Tistory.