IBM developerWorks: Journaling capabilities of ext3

[ Thanks to Kellie
for this link. ]

“In the past few installments, we’ve taken a bit of a
detour by looking at non-traditional filesystems such as tmpfs and
devfs. Now, it’s time to get back to disk-based filesystems, and we
do this by taking a look at ext3. The ext3 filesystem, designed by
Dr. Stephen Tweedie, is built on the framework of the existing ext2
filesystem; in fact, ext3 is very similar to ext2 except for one
small (but important) difference — it supports journaling. Yet
even with this small addition, I think you’ll find that that ext3
has several surprising and intriguing capabilities. In this
article, I’ll give you a good understanding of how ext3 compares to
the other journaling filesystems currently available. In my next
article, we’ll get ext3 up and running.

So, how does ext3 compare to ReiserFS? In previous articles, I
explained how ReiserFS is well suited to handling small files
(under 4K), and in certain situations, ReiserFS’ small file
performance is ten to fifteen times greater than that of ext2 and
ext3. However, while ReiserFS has many strengths, it also has
weaknesses. In the current implementation of ReiserFS (version
3.6), certain file access patterns can actually result in
significantly worse performance than ext2 and ext3, particularly
when reading large mail directories. Also, ReiserFS doesn’t have a
good track record of NFS compatibility and has poor sparse file
performance. In contrast, ext3 is a very well-rounded filesystem.
It’s a lot like ext2; it’s not going to give you the blazingly fast
small-file performance that ReiserFS gives you, but it’s not going
to give you any unexpected performance or functionality hiccups

One of the nice things about ext3 is that because it is based on
the ext2 code, ext2 and ext3’s on-disk format is identical; this
means that a cleanly unmounted ext3 filesystem can be remounted as
an ext2 filesystem with absolutely no problems. And that’s not all.
Thanks to the fact that ext2 and ext3 use identical metadata, it’s
possible to perform in-place ext2 to ext3 filesystem upgrades. Yes,
you read that right. By upgrading a few key system utilities,
installing a modern 2.4 kernel and typing in a single tune2fs
command per filesystem, you can convert your existing ext2 servers
into journaling ext3 systems. You can even do this while your ext2
filesystems are mounted. The transition is safe, reversible, and
incredibly easy, and unlike a conversion to XFS, JFS, or ReiserFS,
you don’t need to back up and recreate your filesystems from
scratch. Now, for a moment, consider the thousands of production
ext2 servers in existence that are just minutes away from an ext3
upgrade; then, you’ll have a good grasp of ext3’s importance to the
Linux community.”


Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends, & analysis