Joontaek Oh, Sion Ji, Yongjin Kim, and Youjip Won, “exF2FS: Transaction Support in Log-Structured Filesystem”, In Proc. of USENIX Conference on File and Storage Technologies (FAST) 2022, Feb, 22-24, 2022
OSlab 연구실 여러분,
저희 연구실의 연구 주제 중 하나인 “exF2FS: Transaction Support in Log-Structured Filesystem” (이하 exF2FS) 논문이 내년 2월에 열리는 2022 20th USENIX Conference on File and Storage Technologies(이하 USENIX FAST`22)에 선정되었습니다.
exF2FS 논문에는 OS Lab의 원유집 교수님, 오준택 군(박사과정), 지시온 군(석사과정), 김용진 군(석사과정) 께서 저자로 참여하였습니다.
기존 어플리케이션들은 트랜잭션 기능이 필요할 때 복잡한 메커니즘을 사용합니다. 파일 시스템 및 운영체제가 트랜잭션 기능을 지원하지 않기 때문입니다. OSLAB 연구팀은 어플리케이션의 주 오버헤드가 복잡한 트랜잭션 메커니즘 때문임을 발견하고, 트랜잭션 기능을 지원하는 파일 시스템인 exF2FS를 개발했습니다. exF2FS는 단일 파일 원자 쓰기를 지원하는 파일 시스템인 F2FS 기반 파일 시스템입니다. Log-structured 파일 시스템의 특성을 이용하여 다중 파일 트랜잭션을 지원합니다. 이를 위해 트랜잭션 파일 그룹, 마스터 커밋 블록 등의 새로운 자료구조를 도입했습니다. 기존 트랜잭션 파일 시스템들에서는 트랜잭션의 크기가 메모리의 크기로 제한됩니다. exF2FS는 Stealing 기법을 통해 트랜잭션의 크기가 메모리의 크기로 제한되지 않도록 했습니다. 마지막으로, Shadow Garbage Collection 기법을 통해 트랜잭션이 garbage collection 때문에 abort되는 문제를 해결했습니다. exF2FS는 SQLite의 초당 트랜잭션 처리량을 약 24배 가량 증가시키고, RocksDB의 초당 연산 처리량을 87% 증가시킵니다.
이번 exF2FS 논문의 FAST`22 선정에 대해, 주저자인 오준택 군은 인터뷰를 통해 소감을 전달했습니다.
“exF2FS가 게재될 때까지 약 5년이 걸렸습니다. 그 동안 8번의 reject를 받았습니다. 연구실의 다른 업무들 때문에 집중하기 어려웠던 까닭도 있지만, 가장 큰 이유는 제가 부족했기 때문입니다. 이제라도 게재할 수 있었던 이유는 제가 부족함을 메꿨기 때문이라고 생각하지 않습니다. 부족한 저를 이끌어주시면서 논문을 게재할 수 있게 해주신 교수님과 저를 도와준 연구실 동료들 덕분이라고 생각합니다.
교수님께 가장 큰 감사를 드리면서 앞으로도 남은 시간동안 최선을 다해 연구에 매진하겠다고 전하고 싶습니다. 초기 연구 시작을 도와주신 진수형과 승용이형, 제 실험을 도와주셨던 선두형과 원종이형께도 감사를 드립니다. 끝으로 마지막 연구 작업을 함께하면서 큰 진척을 만들 수 있게 도와준 시온이와 용진이에게도 고맙다고 전하고 싶습니다.”
FAST`22은 내년 2월 22일~24일 산타클라라에서 개최됩니다.