I work with Greenplum which is essentially a number of Postgres database
instances clustered together. Being postgres, the data is held in a lot
of individual files which can be each fairly big (hundreds of MB or
several GB) or very small (50MB or less). We've noticed a performance
difference when our database files are many and small versus few and large.
To test this outside the database, we built a zpool using RAID-10 (it
works for RAID-z too) and filled it with 800, 5MB files. Then we used 4
concurrent dd processes to read 1/4 of the files each. This reqiured
123seconds.
Then we destroyed the pool, recreated it, and filled it with 20 files
each 200MB and 780 files each 0bytes (same number of files, same total
space consumed). The same dd reads took 15 seconds.
Any idea why this is? Various configurations of our product can divide
data in the databases into an enormous number of small files. varying
the arc cache size limit did not have any effect. Are there other
tunables available to Solaris 10 U7 (not openSolaris) that might affect
this behavior?
Thanks!
-dt
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss