A user has 5 directories, each has tens of thousands of files, the
largest directory has over a million files.  The files themselves are
not very large, here is an "ls -lh" on the directories:
[these are all ZFS-based]

[r...@cluster]# ls -lh
total 341M
drwxr-xr-x+ 2 someone cluster  13K Sep 14 19:09 0/
drwxr-xr-x+ 2 someone cluster  50K Sep 14 19:09 1/
drwxr-xr-x+ 2 someone cluster 197K Sep 14 19:09 2/
drwxr-xr-x+ 2 someone cluster 785K Sep 14 19:09 3/
drwxr-xr-x+ 2 someone cluster 3.1M Sep 14 19:09 4/

When I go into directory "0", it takes about a minute for an "ls -1 |
grep wc" to return (it has about 12,000 files).  Directory "1" takes
between 5-10 minutes for the same command to return (it has about 50,000
files).

I did an rsync of this directory structure to another filesystem
[lustre-based, FWIW] and it took about 24 hours to complete.  We have
done rsyncs on other directories that are much larger in terms of
file-sizes, but have thousands of files rather than tens, hundreds, and
millions of files.

Is there someway to speed up "simple" things like determining the
contents of these directories?  And why does an rsync take so much
longer on these directories when directories that contain hundreds of
gigabytes transfer much faster?

Jeff

_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to