박창현 군은, 비 휘발성 메모리 및 I/O 서브시스템 관련 최신 연구 동향 파악 및 연구 역량 증진을 위해 ACM Symposium on Operating Systems Principles (SOSP) 2017 학회에 참석 하였다. SOSP는 운영체제와 관련된 모든 이슈를 다루는 대규모 학술 대회로서 세계 유수의 연구실과 기업들이 참여하는 학회이다.
운영체제 분야의 연구 동향을 알 수 있는 자리였다. 다른 학술대회보다도 유독 네트워크관련 논문이 많아졌다는 것을 알 수 있었다. 모바일 환경의 발전으로 인하여 온라인에서의 데이터 처리, 보안 등이 중요해졌다는 것을 몸으로 직접 체감하였다. 여러 논문 중에서 다음의 논문들을 좀 더 관심있게 살펴보았다.
첫 논문은 MIT CSAIL의 Srivatsa S. Bhat et al. 의 논문인 “Scaling a file system to many cores using an operation log” 이다. 멀티코어 환경에서 파일시스템의 확장성과 높은 디스크 처리량을 만족시키는 ScaleFS라는 파일시스템을 개발하였다. 하나의 디렉토리에 여러 개의 파일을 만들 때 기존의 파일시스템은 디스크 상의 디렉토리 블록의 메모리내 사본을 업데이트 할 때 cache line 충돌을 발생시켜 확장성을 제한한다. ScaleFS는 디스크의 파일시스템과 메모리의 파일시스템을 분리하고, 코어 별로 operation log를 사용하여 발생한 업데이트를 기록한다. 이로 인해 fsync가 발생할 때까지 업데이트된 내용을 디스크에 쓰는 것을 지연시킬 수 있다. fsync 발생시 코어별 로그를 병합하고 디스크에 적용하는데, 로그에 timestamp를 적용하여 연산 순서를 보장한다. 저자를 만나 여러 코어가 같은 디렉토리 내의 하나의 파일을 접근하려는 경우는 효과가 없는 것 같다는 질문을 하였는데, 그 부분은 자기들도 인지하는 것이고 해당 내용에 대한 bottle neck은 그대로라는 답변을 받았다.
다음 논문은 The University of Texas at Austin의 Youngjin Kwon et al. 의 논문인 “Strata: A Cross Media File System” 이다. Small random write를 효율적으로 처리하기 위하여 다양한 스토리지(NVM, SSD, HDD)를 계층적으로 사용하는 시스템을 제안하였다. NVM에 로그를 기록하는 user-level 파일시스템과, log를 SSD, HDD에 반영하는 kernel 파일시스템으로 구성되었다. 응용프로그램이 NVM에 synchronous 로 private log를 기록하고, kernel 파일시스템은 이 log를 1GB단위로 asynchronous로 이동시킨다. 대용량의 sequential write의 경우에는 NVM을 거치지 않고 바로 SSD, HDD에 쓰도록 하는 것이 더 낫지 않냐는 질문에, 속도면에서는 나을 수 있지만 atomicity를 보장하기 위하여 workload의 특성을 구분짓지 않는 다는 답변을 받았다.
마지막으로 관심있게 본 논문은 Samsung Research의 Nitin Agrawal와 Ashish Vulimiri의 논문인 “Low-Latency Analytics on Colossal Data Streams with SummaryStore” 이다. 거대한 데이터가 증가함으로 인하여 저장과 처리에 큰 부담이 발생하였다. 이에 따라 스토리지 시스템은 100배 더 발전해야 한다. 그러나 모든 데이터가 필요한 것이 아니고 잘 요약된 데이터만 있으면 충분하고, 이를 위하여 데이터를 잘 요약하는 것이 핵심이 되었다. 이러한 요구를 충족시키긴 위한 시스템으로 단일 노드에 대용량 time-series데이터를 저장하고 분석하기 위한 approximate time-series store인 SummaryStore를 소개하였다. SummaryStore는 time-decayed summary, data stream의 요약을 위한 새로운 abstraction, 효율적인 range query를 위하여 summary를 지속적으로 병합하는 ingest algorithm, 신뢰할 수 있는 오류 추정치와 근사값을 반환하고, machine learning과 workload 분석을 지원한다.
네트워크 관련 논문이 많이 있었지만, 스토리지에 관련된 연구도 여전히 진행되고 있는 것을 확인하였다. 스토리지의 병목을 개선하기 위한 다양한 방법들을 제시하고 있었다.
개인적으로는 약 10여년만에 상하이에 재방문 하였는데, 상하이 도심의 멋있는 야경과 스카이라인을 다시 볼 수 있는 좋은 기회였다. 당시에 시간과 돈의 제약으로 하지 못하였던 것들이 많았는데, 전망대에 올라가서 상하이 시내의 야경을 보고 고급 음식점의 음식들을 많이 먹어볼 수 있어서 당시와는 많이 다른 여정이 되었다. 물론 이번 방문도 그리 긴 시간은 아니어서 못해본 것들이 몇가지 있었지만, 예전의 아쉬움을 일부라도 덜어낼 수 있어서 좋았다. 새삼 상하이가 큰 도시라는 것을 깨닫는 시간이 되었다.