Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: Arjan van de Ven <arjan-VuQAYsv1563Yd54FQh9/CA <at> public.gmane.org>
Subject: Re: Btrfs as default file system
Newsgroups: gmane.comp.handhelds.meego.devel
Date: Tuesday 11th May 2010 13:38:01 UTC (over 6 years ago)
On 5/11/2010 4:00, Ameya Palande wrote:
> Hi,
>
> I wanted to know why Btrfs is selected as default file system for MeeGo.

we made a positive choice for btrfs for a list of reasons
* It's the future of Linux filesystems. We had a case where the old guard
(ext3) is getting retired, and there are two new filesystmes on 
the table (btrfs and ext4). We felt that if we picked ext4, we'd have all
the pain of a new filesystem, and we'd then change again a year 
later to btrfs.
* BTRFS has a strong focus on data integrity, while many other filesystems
focus mostly on metadata integrity. For most cases this
   extra focus is free, however for database applications there is a
moderate performance impact.
   This includes things like duplicating key metadata structures on disk
twice, having data checksums, can mark files as critical and for
   duplication (RAID1)... but basically the whole COW design (never
overwrite data) means that you never get garbage in files.
* BTRFS supports on-disk compression, giving both a smaller footprint
(factory preload time!) as well as higher throughput on really slow
   storage.
* BTRFS has writable snapshots. This opens the door to features in MeeGo
1.1 like atomic package updates (already a Fedora 13 feature with
   btrfs) but also the "Restore to factory defaults" becomes easy: just
blow away the snapshot and create a new one and the device is as new.
   You can even use it to have "true multiple users" in the system, both
users have the whole device for themselves with a boot time switch
* Performance for small files. Small files are very common, and BTRFS
stores these very efficiently on disk. Whereas other filesystems
   generally need upto 3 IOs (and thus 3 seeks if your storage rotates) to
access a file, BTRFS stores everything together and needs only 1
   IO.
* Built in defragmentation - performance feature for things like boot time
* Storage pools: Add and remove storage on the fly. (Yes even for phones
this can matter... lets say you have a small flash chip you 
populate in the factory; this feature allows you to then expand to a
secondary storage during first use as if it's one big filesystem... no 
more /opt issues etc)
* ...

well it's a long list of things that made us chose btrfs over its
competition.
 
CD: 3ms