Btrfs vs EXT4 - 파일시스템 비교

2017. 10. 19. 00:37


이번 포스팅에서는

시놀로지 synology DS716+ 에서 DiskStation로는 처음으로 지원하는 파일시스템인 Btrfs에 대해 소개하고

기존 EXT4 와 Btrfs간 비교를 통해 용도에 맞는 파일시스템이 무엇인지 알아보도록 하겠습니다.



Btrfs vs EXT4 - 파일시스템 선택






1. Btrfs와 EXT4란 무엇인가


Btrfs와 EXT4는 각각 파일시스템으로

Wiki에 의하면 Btrfs(B-tree file system 또는 Butter file system)는 데이터 관리 및 안정성을 강화한 최신 파일시스템이며 페이스북의 크리스 메이슨이 개발을 지휘하여 2013년 이후 안정화되어 사용되고 있습니다.

EXT4(Fourth extended file system4)는 EXT3 파일 시스템의 향상된 버전으로 안전 버전인 2008년 이후 꾸준히 사용된 범용적인 파일시스템입니다



각 파일시스템의 특성은 아래 표에서 확인하세요.


Btrfs와 EXT4 파일시스템 비교
항목 Btrfs EXT4
명칭

B-tree file system 또는 Butter file system

(B-tree 파일시스템 또는 배더 파일 시스템)

Fourth extended file system
(4차 확장 파일 시스템)
도입일 (안정판) 리눅스 커널 3.10, 2013-07-29 2008-10-21
불안정판 리눅스 커널 2.6.29, March 2009 2006-10-10
도입 운영체제

리눅스, ReactOS

리눅스 2.6.28, 2.6.19
디렉토리 구조 B-tree 링크드 리스트, hashed B-tree

파일 구조

익스텐트

Extents/Bitmap

최대 파일크기 16 EiB 16 TiB (4k 블록 파일 시스템 기준)
최대 파일수 2의 64승 40억/
최대 파일이름 길이

255개 아스키 문자

(멀티바이트 문자 인코딩의 경우 수가 더 적음)

256 바이트
최대 볼륨크기 16 EiB 1 EiB
날짜 정밀도 나노초 나노초
암호화 가능여부 아니오
압축 가능여부 예 (zlib, LZO, ZSTD) 아니오

<출처: 위키백과>



2. Btrfs vs EXT4 장점/단점


○ Btrfs 장점

실시간 오류 정정 기능과 스냅샷을 이용하여 볼륨 복원이 가능하여 장애 복원성이 좋습니다.

또한 압축 기능 제공과 SSD 드라이브에 최적화되어 있어 일부 실험에서는 압축+SSD 조합을 통해 EXT4 보다 4배 이상의 성능을 보여주는 탁월한 읽기/쓰기 성능을 제공합니다.


○ Btrfs 단점

장점이던 스냅샷이 이번에는 단점입니다. ^^

스냅샷 이미지의 저장을 위해 디스크 공간을 추가로 사용하며 스냅샷 용량 증가의 특성상 디스크 사용량 예측이 어려운 것이 단점입니다.

또한, 스냅샷 이미지 생성과 디스크 단편화 문제로 자동 조각 모음을 처리할 때 성능 저하가 발생할 수 있습니다


○ EXT4 장점

EXT1, EXT2, EXT3을 거쳐 발전한 EXT4는 데스크톱과 워크스테이션 등에서 오랫동안 성능을 검증 받았습니다. 또한 Btrfs보다 범용적인 파일시스템으로 호환성이 좋고 다른 파일시스템보다 CPU 사용율이 낮습니다.


○ EXT4 단점

디스크 블록 지연 할당에 의한 데이터 유실 가능성이 있습니다. EXT4는 성능 향상을 위해 데이터를 디스크에 즉시 기록하지 않는데 이런 EXT4의 특성으로 데이터를 디스크에 기록하기 전에 발생하는 시스템 충돌이나 전원 문제로 데이터 유실 가능성이 있습니다. 물론 이런 문제에 대비하여 저널링 기능이 있어 복구할 수 있고 OS 레벨에서도 보정하지만 이런 동작은 성능을 저하시키고 문제 발생 가능성에 대비를 해야하는 등 운영자를 고민하게 만듭니다.





3. Btrfs vs EXT4 선택 고민


Btrfs, EXT4 모두 안정성을 장점으로 내세우지만 아직은 그 안정성에 대해서는 의견이 나뉩니다.

앞서 장단점을 확인했듯이 파일시스템 특성은 Btrfs가 우수하지만, OS나 응용프로그램들이 완벽하게 지원하지 않음으로써 발생하는 문제가 있으며 EXT4는 구조적으로 전원 장애 같은 문제에서 안정성이 떨어집니다.


따라서 영화나 음악 같은 덩치가 크고 문제 발생 시 복구 요구가 낮을 것으로 예상되는 볼륨은 EXT4를 이용하고

문서나 사진 같은 바이러스나 사용자의 실수로부터 보호해야 하는 자료용 볼륨, 웹서비스 같은 높은 성능이 필요한 볼륨, OS설치 볼륨등은 Btrfs를 사용하는것을 생각해 볼 수 있습니다.




4. synology 시놀로지에서 Btrfs을 써야 하는 이유는?


시놀로지는 구매자로 하여금 Btrfs 파일시스템의 사용을 권장하고 있습니다.

DSM6.0 버전이 처음 Btrfs를 지원한 이후 현재까지 다양한 데이터 백업과 보호 도구를 지원하며 Virtual Machine Manager 같은 새로운 패키지는 Btrfs만 지원하기 때문에 시놀로지의 모든 기술과 기능을 이용하기 위해서는 Btrfs로 파일시스템을 구성하는 것이 좋습니다.

다시 말하면 시놀로지에서 Btrfs를 사용해야 하는 이유는 시놀로지의 완전한 기능 사용을 위해 필요할 것 같습니다.



○ 시놀로지 Btrfs 파일시스템 사용가능 모델

18 시리즈 :

DS3018xs, DS918+, DS718+, DS418play, DS218+

17 시리즈 :

FS3017, FS2017, RS18017xs+, RS4017xs+, RS3617xs+, RS3617xs, RS3617RPxs, DS3617xs, DS1817+, DS1517+

16 시리즈 :

RS18016xs+, RS2416+, DS916+, DS716+II, DS716+, DS416play, DS216+II, DS216+

15 시리즈 :

RS815+, RC18015xs+, DS3615xs, DS2415+, DS1815+, DS1515+, DS415+

14 시리즈 :

RS3614xs+, RS3614xs, RS3614RPxs, RS2414+, RS2414RP+, RS814+, RS814RP+

13 시리즈 :

RS10613xs+, RS3413xs+, DS2413+, DS1813+, DS1513+, DS713+

12 시리즈 :

RS3412xs, RS3412RPxs, RS812+, RS812RP+, DS3612xs, DS1812+, DS412+

11 시리즈 :

RS3411xs, DS3611xs






참고: http://www.phoronix.com

       https://www.synology.com/ko-kr/dsm/Btrfs