리눅스 커널 block 레이어의 압축 기술: zram와 dm-vdo

메모리가 부족한 서버나 컨테이너 환경에서는 스왑을 켜는 순간 디스크 I/O 지연이 그대로 애플리케이션 응답 속도로 이어진다. 반대로 스토리지 비용을 아끼려고 압축을 걸고 싶어도, 파일시스템 레벨 압축(Btrfs, ZFS 등)은 해당 파일시스템을…

Continue Reading리눅스 커널 block 레이어의 압축 기술: zram와 dm-vdo

F2FS와 BtrFS, 압축 가능한 파일시스템 관점에서 비교

F2FS와 Btrfs는 둘 다 Linux 커널에 포함된 파일시스템이면서 투명 압축(transparent compression)을 지원한다는 공통점이 있다. 하지만 압축을 구현한 방식과 실제로 얻을 수 있는 효과는 두 파일시스템의 근본적인 설계 철학 차이 —…

Continue ReadingF2FS와 BtrFS, 압축 가능한 파일시스템 관점에서 비교

Pandas(판다스) 통계함수(mean, unique, value_counts)

데이터를 받으면 가장 먼저 하게 되는 작업이 값의 분포를 파악하는 것이다. Pandas는 평균을 구하는 mean(), 고유값을 뽑는 unique(), 값별 개수를 세는 value_counts() 같은 통계 함수를 기본으로 제공한다. 이 글에서는 예제…

Continue ReadingPandas(판다스) 통계함수(mean, unique, value_counts)

Linux 블록 I/O 추적 도구 blktrace 사용법

디스크 I/O 지연이 의심되는데 iostat이나 top 같은 도구로는 정확히 어느 단계(큐잉, 병합, 드라이버 전달, 디바이스 처리)에서 시간이 걸리는지 알기 어려울 때가 있다. blktrace는 커널 블록 계층(Block Layer)의 트레이스포인트를 이용해 이…

Continue ReadingLinux 블록 I/O 추적 도구 blktrace 사용법

리눅스 커널에서 압축을 지원하는 파일시스템은?

리눅스 커널에는 파일시스템이 많지만, 그중 데이터를 투명하게 압축(transparent compression)해서 저장 공간을 아껴주는 것은 일부에 불과하다. 가장 많이 쓰이는 ext4나 XFS는 압축 기능 자체가 없고, Btrfs와 F2FS는 쓰기 가능한(writable) 파일시스템이면서 압축을…

Continue Reading리눅스 커널에서 압축을 지원하는 파일시스템은?