디지털 라이브러리[ 검색결과 ]
클라우드 기반 파일 시스템의 오브젝트 크기별 성능 분석
오늘날, 클라우드 인프라 서비스는 일정한 성능을 보장해주면서도 사용한 만큼 비용을 지불하는 과금체계를 통해 많은 인터넷 서비스들의 운영비용을 개선시켜 주고 있다. 특히 오브젝트 스토리지는 필요한 만큼 파일을 저장할 수 있고, 언제 어디서나 접근할 수 있다는 점에서 각광받고 있다. 이에 따라, 최근에는 오브젝트 스토리지를 HTTP 기반의 RESTful API 방식이 아닌 POSIX 기반 파일 액세스가 가능한 클라우드 기반 파일 시스템 연구들이 등장하고 있다. 하지만 이러한 파일 시스템들은 오브젝트 스토리지에 저장되는 모든 파일을 동일한 크기의 단위 오브젝트로 분할하기 때문에 데이터 접근 시 비효율적인 입출력이 발생할 여지가 있다. 따라서 본 연구에서는 파일 및 워크로드의 특성을 구별하여 오브젝트 스토리지에 저장되는 단위 오브젝트의 적합한 크기를 추정하고, 각 파일의 접근 성능을 향상시킬 수 있다는 점을 검증한다. 제안하는 기법은 S3QL에 비해 평균 18.6% 빨라진 것으로 나타났다.
SSD 입출력 요청 스트림들의 QoS 지원을 위한 플래시 연산 그룹 스케줄링
최근에 서버 시스템에서 SSD(Solid-State Drive)가 고성능 저장장치 및 캐시로서 많이 사용됨에 따라 다양한 서버 응용들의 입출력 요청 스트림들을 위해 SSD 수준에서 서비스 품질(Quality-of-Service)를 제공할 수 있는지에 대한 관심이 높아지고 있다. 현재까지 대부분의 SSD는 SATA 버스 상에서 AHCI 컨트롤러를 사용해왔기 때문에 각 입출력 스트림을 SSD 내부에서 구별하여 서비스할 수가 없었다. 그러나, 최근에 새로운 SSD 인터페이스로서 PCI Express 버스 상에서 NVME 컨트롤러가 제안됨에 따라 각 입출력 스트림을 SSD 내부에서 구별할 수 있게 되었고, 이에 따라 입출력 요청들을 스케줄링할 수 있게 되었다. 본 논문은 NVME 기반 플래시 저장 장치를 위한 플래시 연산 그룹 스케줄링(Flash Operation Group Scheduling)을 제안하고, 가중치에 따라 입출력 스트림별로 비례 지분 대역폭을 제공할 수 있음을 QEMU 기반 시뮬레이션을 통해 보인다.
하이브리드 메인 메모리와 스토리지의 특성을 고려한 버퍼 캐시 교체 정책
PRAM은 바이트 단위의 쓰기와 비휘발성의 특징을 모두 가지고 있으며, DRAM보다 높은 밀집도가 기대되기 때문에 DRAM을 대체할 수 있을 것으로 예상된다. 이에, PRAM 기반의 버퍼 캐시 교체 정책에 대한 연구가 활발하게 진행되고 있다. 그러나 대부분의 기존 연구는 PRAM의 수명 및 느린 쓰기 성능에만 집중함으로써 PRAM의 바이트 단위의 쓰기 성능을 제한적으로 이용한다. 이에, 본 논문에서는 PRAM의 바이트 단위의 쓰기 성능과 스토리지의 성능을 모두 고려한 새로운 버퍼 캐시 교체 정책을 제안한다. 제안 기법은 바이트 단위의 쓰기 성능을 이용하기 위해 작은 크기의 쓰기 요청이 빈번한 페이지를 PRAM에 유지시키며 DRAM과 PRAM사이의 선택적 페이지 이동을 통해 PRAM의 쓰기 횟수를 감소시킨다. 실험 결과, 제안 기법은 CLOCK 알고리즘에 비해 최고 92%까지 PRAM의 쓰기 횟수를 감소시키고 PRAM 테스트 보드에서 최대 62%까지 수행시간을 향상시키는 것을 확인하였다.
가상화 환경 IoT 게이트웨이의 성능 향상을 위한 SSD 캐시 기법
스토리지는 응용 프로그램의 성능에 가장 큰 영향을 주므로 가상화된 IoT 게이트웨이를 사용한 홈 클라우드 환경에서 매우 중요하다. 스토리지의 성능 향상을 위해 SSD와 같은 고성능의 디스크를 캐시로 사용해 왔으나 취약한 쓰기 성능과 제한된 셀 수명 문제로 인해 주로 읽기 전용 캐시로 사용하였다. 그러나 사용자 응용의 성능 향상을 위해서는 읽기 작업뿐만 아니라 쓰기 작업의 성능도 매우 중요하다. 본 논문은 이러한 환경에서 읽기 및 쓰기에 모두 사용 가능한 새로운 SSD 캐시 기법을 제안한다. 실험을 통해 본 캐시 기법이 응용 프로그램의 임의 쓰기 작업을 순차적 동작으로 변환시켜 성능 향상을 이룰 수 있음을 확인하였다.
응용프로그램의 기동시간 단축을 위한 파일 시스템 수준의 SSD 캐싱 기법
응용프로그램의 기동 시간은 기기에 대한 사용자 체험에 영향을 주는 중요한 지표로 보조 기억 장치의 성능에 의해 큰 영향을 받는다. 하드디스크 대신 SSD를 사용하게 되면 기동 시간을 크게 낮출 수 있지만 비용 대비 성능을 고려하면 작은 용량의 SSD를 하드디스크의 캐시로 쓰는 것이 현실적인 대안이 될 수 있다. 본 논문에서는 파일시스템 수준에서 하드디스크 상의 블록을 SSD로 이주시키는 기법을 제안한다. 제안한 기법은 기존의 SSD 캐싱 기법들에서 요구되던 캐시 데이터의 사상에 필요한 주 메모리, CPU, 그리고 사상 정보의 유지를 위한 SSD 공간 사용의 부가적인 오버헤드가 없다. 8개의 응용프로그램을 이용한 실험에서 메타데이터와 데이터 블록을 모두 SSD에 캐싱한 경우에 기동시간이 평균 56% 단축됨을 확인하였다.
OTT 서비스를 위한 계층적 부호화 기반 멀티미디어 데이터 관리 시스템
여러 종류의 해상도를 가지는 단말들에 대해 인터넷을 통해 멀티미디어 동영상을 제공하는 OTT 서비스가 확산되고 있다. 각 단말들은 3G, LTE, VDSL, ADSL등 네트워크 망을 이용한 통신을 하고 있다. 다양한 해상도의 단말들과 다양한 속도의 네트워크망의 이용자들에 맞춰서 새로운 멀티미디어의 압축방식의 필요성이 높아졌다. 스케일러블 부호화 방식은 시간적/공간적 계위성을 제공하기 위해서 멀티미디어 데이터를 저장할 때 계층적 B 화면 구조를 이용하고 있다. 이를 이용하여 계층적으로 부호화된 멀티미디어 데이터는 OTT 서비스에 최적화 되어있으며, 이를 효율적으로 관리하기 위한 파일 배치 기법과 MLP 인기도 관리 정책, WFF 버퍼 캐시 관리 정책을 제안한다. 본 논문에서는 zipf 분포를 이용한 접근 트레이스를 생성하고, 기존 시스템과 제안한 시스템의 성능을 비교 평가하였다.
뉴메모리를 이용한 고성능 및 호환성을 위한 I/O 변환 계층 기술
컴퓨팅 시스템이 급속도로 발전함에 따라 빠른 데이터 처리가 요구되고, 이를 위한 고성능 저장 장치 기술이 요구되고 있다. 차세대 메모리인 뉴메모리는 고성능 저장장치에 활용될 수 있는 장점을 가진다. 뉴메모리는 비휘발성을 가지고 있으며, DRAM (Dynamic Random Access Memory)에 가까운 접근 속도를 가지고 있어서, 업계 및 학계로 하여금 새로운 저장장치의 역할을 할 수 있을 것이라는 기대를 받고 있다. 본 연구는 뉴메모리를 저장장치로 활용하기 위한 기술로 NTL (New memory Translation Layer)을 제시한다. NTL은 기존의 디스크 파일시스템을 뉴메모리에서 사용할 수 있게 하여 높은 호환성을 제공하며, 블록 단위가 아닌 바이트 단위로 입출력 데이터를 처리하여 높은 데이터 처리량을 제공한다. 본 논문에서는 NTL의 설계에 대해 서술하며, NTL을 통해 얻는 성능 이점을 보여주기 위한 실험 결과를 제시한다.
스토리지 클래스 메모리를 위한 롤백-복구 방식의 데이터 일관성 유지 기법
스토리지 클래스 메모리(SCM)는 메모리와 스토리지의 장점을 동시에 가지고 있기 때문에 기존의 스토리지를 대체할 차세대 스토리지로 주목 받고 있다. 하지만 현재까지 제안된 SCM 전용 파일시스템은 데이터 일관성을 충분히 보장하지 않거나 혹은 보장될 경우, 과도한 일관성 유지 비용을 발생시키는 문제점을 지니고 있다. 본 논문에서는 보편적으로 사용하는 WAL(Write Ahead Logging) 방식의 일관성 유지 기법 대신 롤백-복구 방식을 이용하여, 블록내의 변경되는 데이터의 비율에 따라 로그 데이터 기록방식을 변경하는 데이터 일관성 유지 기법을 제안한다. 본 기법은 데이터 일관성 손실 없이 로그 데이터의 크기를 줄여 데이터 쓰기 및 동기화 비용을 최소화시킬 수 있다. 제안한 기법을 평가하기 위해 리눅스 3.10.2 상에 구현하여 성능을 측정한 결과, 다른 일관성 유지기법에 비해 평균적으로 9배 정도의 데이터 쓰기 성능이 향상됨을 볼 수 있었다.
비휘발성 캐시를 사용하는 플래시 메모리 SSD의 데이터베이스 로깅 성능 분석
데이터베이스 시스템에서, 트랜잭션이 수행한 변경 사항은 커밋 전 2차 저장장치에 보존되어야 한다. 일반적 2차 저장장치는 비휘발성 미디어의 처리 지연을 보완하기 위해 휘발성 DRAM 캐시를 가지고 있다. 그러나 휘발성 DRAM에만 쓰여지는 로그들은 영구성을 보장할 수 없으므로, DRAM 캐시에서 저장매체로 로그를 쓰는 지연 시간을 감출 수 없다. 최근 이러한 단점 극복을 목적으로 DRAM 캐시에 커패시터를 장착한 플래시 SSD가 등장하였다. 이러한 비휘발성 캐시를 가지는 저장 장치는 DRAM 캐시에 로그를 쓰고 즉시 커밋 가능하므로, 커밋 대기를 줄이고 트랜잭션 처리량을 증가시킬 것이다. 본 논문은 커패시터 백업 캐시를 사용한 SSD를 로그 저장소로 사용한 경우 데이터베이스의 트랜잭션 처리 성능에 대해 실험 및 분석 한다. 로그를 낸드 플래시에 저장하지 않고 DRAM 캐시에 저장한 직후 커밋 함으로써, 3배 이상의 처리량 향상이 가능하다. 또한 적절한 튜닝을 거친 후 이상적 로그 성능의 73% 이상을 보인다.
부분 가비지 컬렉션을 이용한 로그 구조 파일시스템의 쓰기 성능 개선
최근 플래시 저장장치의 사용이 대중화되면서 플래시 저장장치의 특성에 맞는 로그 구조 파일시스템에 대한 관심도 높아지고 있다. 로그 구조 파일시스템은 사용자의 임의 쓰기를 파일시스템에서 순차쓰기로 바꾸어 처리한다. 이 순차 쓰기를 유지하기 위해 파일시스템에서 가비지 컬렉션(Garbage Collection)을 해 주어야 하는데, 이때 오버헤드로 인해 쓰기 성능이 감소하는 것을 막기 위한 기법으로 SSR (Slack Space Recycling)이 제시되었다. 그런데, SSR은 임의 쓰기를 발생시키기 때문에, 임의 쓰기성능이 낮은 저가형 저장장치에서 쓰기 성능을 감소시키는 문제가 있다. 본 논문에서 제시하는 부분 가비지 컬렉션은 SSR방식으로 데이터를 기록하기 전에 유효한 블록들을 일부만 복사하여 옮김으로써 무효화된 공간의 크기를 늘려 임의 쓰기 수를 줄여서 쓰기 성능을 증가시키는 기법으로, SD 카드에서 쓰기 성능을 최대 두 배 이상 증가시켰다.