Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to XFS HEPSYSMAN 5th December 2005.

Similar presentations


Presentation on theme: "Introduction to XFS HEPSYSMAN 5th December 2005."— Presentation transcript:

1 Introduction to XFS HEPSYSMAN 5th December 2005

2 What exactly is a filesystem ?
Organization: Large disk space to store small data items Use files and directories In UNIX everything is a stream of bytes: More complex file definition in other OS’s Devices are also presented in the filesystem Linux uses virtual filesystems, e.g. /proc

3 A little bit of background
Three generation of UNIX filesystems: v7 / sysv / coherent / minix ffs / ext2 vxfs / ext3 / jfs / xfs / reiserfs

4 Features of 3rd generation UNIX filesystems
Intent logging / journaling Flexible metadata structures Dynamic inode allocations Extents

5 History of XFS Developed by Silicon Graphics (now SGI) for use on IRIX: original design available for IRIX v 5.3 released as Open Source 2001/2002 – some Linux distributions with native XFS support 2003 – XFS support in 2.4 kernel

6 XFS features (1) Journaling:
but only metadata updates, not data updates. Fast Transactions: uses efficient B+ tree structures for fast searches and rapid space allocation

7 XFS Features (2) 64-bit file system:
64bit variables for global counters and disk addresses Large theoretical maximum filesystem size For Linux 2.4: 2 Terabytes. For Linux 2.6 (when using 64 bit addressing on a 64 bit platform): 9 Petabytes (or the device limits) For Linux 2.6 (on 32 bit platforms): 16Terabytes (even with 64 bit addressing) Maximum file size is same as filesystem size

8 XFS Features (3) Partitioned into Allocation Groups:
each AG manages its own free space and inodes provides scalability and parallelism within the file system limits the size of the structures needed to track this information

9 XFS Features (3, continued)
allows many internal pointers to be 32-bits AGs typically range in size from 0.5 to 4GB files and directories are not limited to a single AG.

10 XFS Features (4) Sophisticated support utilities:
fast mkfs (make a file system) dump and restore utilities for backup xfsrepair to fix corrupt filesystem xfs_fsr (XFS defragmenter) xfsdb (XFS debug) xfscheck (XFS check) xfs_growfs (enlarges filesystems online)

11 Why you might want to use XFS
Stable, mature code base (oldest journaling filesystem available on Unix) Very good performance for large reads or writes Designed for large systems Supports user and group quotas Support for Access Control Lists and Extended Attributes

12 Extended Attributes An extended attribute is a name/value pair associated with a file. Attributes can be attached to all types of inodes: regular files, directories, symbolic links, device nodes, and so forth. Attribute values can contain up to 64KB of arbitrary binary data. See man attr for more details

13 Extended attribute namespaces
XFS implements three attribute namespaces: user namespace available to all users, protected by the normal file permissions system namespace, accessible only to privileged users and used for protected filesystem meta-data such as access control lists (ACLs) and hierarchical storage manager (HSM) file migration status security namespace used by security modules (SELinux)

14 Why you might not want to use XFS
No data journaling tar, cpio do not understand Extended Attributes

15 Resources XFS/Linux homepage: contains pointers to whitepapers, books, articles, etc. Public mailing list: with searchable list archive SGI Bugzilla database to report any bugs in XFS for Linux

16 Comparison tests - 1 Tests were performed:
on the same filesystem on the same hardware (AMD Athlon 1666 Mhz, 500Mb) using 3 different operating systems: Redhat 7.3 ( ) Scientific Linux version 3 ( EL) Scientific Linux version 4 ( EL and EL.XFS)

17 Comparison tests - 2 Tests used different filesystem types:
RH 7.3 – ext2, ext3 (xfs not available) SL 3 – ext2, ext3 (attempts to create xfs filesystem caused system crash requiring hardware reset) SL 4 – ext2, ext3, xfs (default), xfs (custom: mkfs.xfs –d agsize=4g –i version=1 –I size=512 <device>)

18 Comparison tests - 3 Tests were performed:
using bonnie++ test program (see using the same parameters for each test: /usr/local/sbin/bonnie++ -d /data \ -s 4096M:1024k \ -n 192: :128:1024 -m csfnfs30 \ -u root 1>> outputfile 2>&1

19 Comparison tests - 4 12 tests in total, each reporting filesystem performance and CPU use The first 6 tests measure I/O intensive work: Sequential output for character, blocked and rewrites Sequential input for character and blocked Random seeks

20 Comparison tests - 6 The other 6 tests measure performance for many small files using: Sequential create, read and delete Random create, read and delete

21

22

23

24

25

26

27

28

29

30

31

32


Download ppt "Introduction to XFS HEPSYSMAN 5th December 2005."

Similar presentations


Ads by Google