본문 바로가기

garbage collection3

[FAST ' 24] MiDAS: Minimizing Write Amplification in Log-Structured Systems FAST '24   Key-Value Systems Session MiDAS: Minimizing Write Amplification in Log-Structured Systems through Adaptive Group Number and Size ConfigurationSeonggyun Oh, Jeeyun Kim, and Soyoung Han, DGIST; Jaeho Kim, Gyeongsang National University; Sungjin Lee, DGIST; Sam H. Noh, Virginia Techhttps://www.usenix.org/conference/fast24/presentation/oh  prior stage of MiDAS= Lightweight data lifetime c.. 2025. 3. 11.
The Importance of Data Placement Policies in Reducing Write Amplification Caused by Garbage Collection (GC로 인한 쓰기 증폭 완화 측면에서의 데이터 배치 정책 중요성) waf 감소를 위해서는 gc 최적화도 중요하지만 가장 중요한 것은 데이터 플레이스먼트 정책! 데이터 배치 정책의 핵심은 비슷한 인벨리드 타임의 데이터 블록끼리 그룹핑하는 것이다데이터 블록의 예상 인벨리드 타임을 추정하고 비슷한 시간대의 블록을 포함하고 있는 세그먼트로 할당하다보면 같은 세그먼트에 있는 데이터 블록들은 비슷한 시점에 인벨리드 되는 블록들일 것이다.  모든 블록이 같은 시점에 인벨리드 되면 해당 세그먼트는 데드 세그먼트가 되므로 데드 세그먼트가 생성된 경우 gc를 수행할 때 라이브 블록이 재배치를 위해 복사될 일이 없다. 그래서 추가적인 쓰기가 일어나지 않고 waf가 감소하는 것이다.  데이터 블록의 인벨리드 타임을 예상하고 같은 시점의 블록끼리 그룹핑하여 세그먼트를 만들면 데드 세그먼트를 .. 2025. 2. 28.
[FS] GC / WAF / WAF를 계산할 때 (총 블럭 수 - 유저가 작성한 블럭 수)로 계산하지 않는 이유 쓰기 증폭(Write Amplification)은 Flash 기반 SSD, NAND 메모리, 로그 구조 파일 시스템에서 필수적인 과정인 Garbage Collection(GC)으로 인해 발생하는 현상이다. GC는 스토리지 내부에서 벨리드한 데이터를 재배치하고 삭제된 데이터를 정리하여 새로운 쓰기 공간을 확보하는 과정이다. 이 과정에서 사용자가 요청한 데이터 쓰기보다 더 많은 블럭이 내부적으로 쓰이게 되는데, 이를 쓰기 증폭이라고 한다. 즉, 한 번의 사용자 쓰기 요청이 여러 번의 추가 쓰기를 유발하는 것이다. 쓰기 증폭이 발생하는 주요 원인은 두 가지! 첫 번째는 Garbage Collection 과정이다. 스토리지는 데이터를 세그먼트 단위로 관리하는데, 가비지 블럭이 포함된 세그먼트가 GC 대상으로 선.. 2025. 2. 28.
728x90