검색 : [ keyword: 파일 시스템 ] (15)

로그 구조 파일 시스템의 파일 단편화 해소를 위한 클리닝 기법

박종규, 강동현, 서의성, 엄영익

http://doi.org/

로그 구조 파일 시스템에서는 쓰기 작업을 처리할 때 새로운 블록들이 순차적으로 할당된다. 그러나, 다수의 프로세스가 번갈아가며 동기적 쓰기 작업을 요청할 경우, 파일 시스템 상에서는 각 프로세스가 생성한 파일이 단편화될 수 있다. 이 파일 단편화는 읽기 요청을 처리할 때 다수의 블록 I/O를 발생시키기 때문에 읽기 성능을 저하시킨다. 게다가, 미리 읽기 기능은 한 번에 요청되는 데이터의 양을 증가시킴으로써 성능 저하를 더욱 심화시킨다. 이에, 본 논문에서는 파일 단편화 문제를 해결하기 위해 로그구조 파일 시스템의 새로운 클리닝 기법을 제안한다. 제안 기법은 로그 구조 파일 시스템의 클리닝 과정 중 유효 데이터 블록을 아이노드 번호 순으로 정렬함으로써 한 파일의 데이터 블록들을 인접하게 재배치한다. 실험 결과, 제안한 클리닝 기법이 클리닝 전에 비해 약 60%의 파일 단편화를 제거하였고, 그 결과로 미리 읽기 기능을 적용했을 때 읽기 성능을 최고 21%까지 향상시키는 것을 확인하였다.

메모리 파일 시스템 기반 고성능 메모리 맵 파일 입출력을 위한 매핑 캐시

김지원, 최정식, 한환수

http://doi.org/

기존보다 데이터를 빠르게 접근하기 위한 노력과 비-휘발성 메모리의 발전은 메모리 파일 시스템 연구에 큰 기여를 해왔다. 메모리 파일 시스템은 파일 입출력의 고성능을 위해서 기존에 사용하는 읽기-쓰기 입출력보다 오버헤드가 적은 메모리 맵 파일 입출력을 사용하도록 제안하고 있다. 하지만 메모리 맵 파일 입출력을 사용하게 되면서 페이지 테이블을 구축할 때 발생하는 오버헤드가 전체 입출력 성능의 큰 부분을 차지하게 되었다. 또한 같은 파일이 반복적으로 접근될 때마다 페이지 테이블을 매번 삭제하기 때문에, 오버헤드가 불필요하게 중복되어서 발생한다는 점을 발견했다. 본 논문이 제안하는 매핑 캐시는 이러한 중복되는 오버헤드를 제거하기 위해서, 매핑이 해제될 때 파일의 페이지 테이블을 제거하지 않고 저장하고 있다가 다시 접근될 때 이를 재활용할 수 있도록 고안한 기법이다. 매핑 캐시는 기존 파일 입출력 성능보다 2.8배, 그리고 웹서버 전체 성능보다 12% 향상을 보였다.

뉴메모리를 이용한 고성능 및 호환성을 위한 I/O 변환 계층 기술

송현섭, 문영제, 노삼혁

http://doi.org/

컴퓨팅 시스템이 급속도로 발전함에 따라 빠른 데이터 처리가 요구되고, 이를 위한 고성능 저장 장치 기술이 요구되고 있다. 차세대 메모리인 뉴메모리는 고성능 저장장치에 활용될 수 있는 장점을 가진다. 뉴메모리는 비휘발성을 가지고 있으며, DRAM (Dynamic Random Access Memory)에 가까운 접근 속도를 가지고 있어서, 업계 및 학계로 하여금 새로운 저장장치의 역할을 할 수 있을 것이라는 기대를 받고 있다. 본 연구는 뉴메모리를 저장장치로 활용하기 위한 기술로 NTL (New memory Translation Layer)을 제시한다. NTL은 기존의 디스크 파일시스템을 뉴메모리에서 사용할 수 있게 하여 높은 호환성을 제공하며, 블록 단위가 아닌 바이트 단위로 입출력 데이터를 처리하여 높은 데이터 처리량을 제공한다. 본 논문에서는 NTL의 설계에 대해 서술하며, NTL을 통해 얻는 성능 이점을 보여주기 위한 실험 결과를 제시한다.

스토리지 클래스 메모리를 위한 롤백-복구 방식의 데이터 일관성 유지 기법

이현구, 김정훈, 강동현, 엄영익

http://doi.org/

스토리지 클래스 메모리(SCM)는 메모리와 스토리지의 장점을 동시에 가지고 있기 때문에 기존의 스토리지를 대체할 차세대 스토리지로 주목 받고 있다. 하지만 현재까지 제안된 SCM 전용 파일시스템은 데이터 일관성을 충분히 보장하지 않거나 혹은 보장될 경우, 과도한 일관성 유지 비용을 발생시키는 문제점을 지니고 있다. 본 논문에서는 보편적으로 사용하는 WAL(Write Ahead Logging) 방식의 일관성 유지 기법 대신 롤백-복구 방식을 이용하여, 블록내의 변경되는 데이터의 비율에 따라 로그 데이터 기록방식을 변경하는 데이터 일관성 유지 기법을 제안한다. 본 기법은 데이터 일관성 손실 없이 로그 데이터의 크기를 줄여 데이터 쓰기 및 동기화 비용을 최소화시킬 수 있다. 제안한 기법을 평가하기 위해 리눅스 3.10.2 상에 구현하여 성능을 측정한 결과, 다른 일관성 유지기법에 비해 평균적으로 9배 정도의 데이터 쓰기 성능이 향상됨을 볼 수 있었다.

비휘발성 버퍼 캐시를 이용한 파일 시스템의 주기적인 flush 오버헤드 개선

이은지, 강효정, 고건, 반효경

http://doi.org/

파일 시스템 버퍼 캐시는 느린 스토리지의 접근 횟수를 줄여 입출력 성능 향상에 기여하지만, 캐시에서 수정된 데이터를 스토리지에 오랫동안 반영하지 않을 경우 크래쉬 발생 시 최신 데이터가 유실되거나 데이터의 일관성이 깨어지는 문제가 발생할 수 있다. 이를 방지하기 위해 대부분의 운영체제는 수정 데이터를 주기적으로 스토리지에 반영하는 flush 데몬을 사용한다. 본 논문은 파일시스템의 쓰기 연산 중 30-70%가 주기적인 flush에 의해 발생함을 분석하고, 이를 소량의 NVRAM 버퍼 캐시를 이용하여 해결하는 기법을 제시한다. 특히, 본 논문은 델타 쓰기 및 그룹 기반 교체 기법을 제안하여 소량의 NVRAM만으로 스토리지 쓰기 트래픽과 처리량을 각각 44.3%와 23.6% 개선할 수 있음을 보인다.


Search




Journal of KIISE

  • ISSN : 2383-630X(Print)
  • ISSN : 2383-6296(Electronic)
  • KCI Accredited Journal

사무국

  • Tel. +82-2-588-9240
  • Fax. +82-2-521-1352
  • E-mail. chwoo@kiise.or.kr