ZFS - poor performance with "large" directories
krad
kraduk at gmail.com
Tue Nov 24 14:18:05 UTC 2015
make sure atime if off for starters on the filesystem
On 24 November 2015 at 14:00, Albert Cervin <albert at acervin.com> wrote:
> Hi all,
>
> Please feel free to direct me to a list that is more suitable.
>
> We are trying to set up a fileserver solution for a web application that we
> are building. This fileserver is running FreeBSD 10.2 and ZFS. Files are
> written over CIFS with Samba running on the fileserver host.
>
> However, we are seeing en exponential decrease in performance to write to
> the file server when the number of files in the directory grows (when it
> goes up to ~6000 files it becomes unusable and the write time has gone from
> a fraction of a second to ten seconds).
>
> We ran the same setup on a Linux machine with an ext4 file system which did
> NOT suffer from this performance degradation.
>
> Our first reaction was to remove Samba from the equation. I ran a test
> where i tried to copy a folder with a large amount of files and then ran a
> test with the same folder as a zip.
>
> So,
>
> cp -r folder_with_lots_of_files copy_of_folder_with_lots_of_files
>
> gives an iostat output that looks like this for the zpool (zpool iostat
> frosting 1):
>
> pool alloc free read write read write
> ---------- ----- ----- ----- ----- ----- -----
> frosting 48.5G 299G 2 0 267K 8.56K
> frosting 48.5G 299G 401 0 50.2M 0
> frosting 48.6G 299G 384 94 47.9M 7.79M
> frosting 48.6G 299G 471 0 58.9M 0
> frosting 48.6G 299G 492 0 61.4M 0
> frosting 48.6G 299G 393 0 49.0M 0
> frosting 48.6G 299G 426 0 53.3M 0
> frosting 48.6G 299G 421 147 52.5M 9.71M
> frosting 48.6G 299G 507 0 63.4M 0
> frosting 48.6G 299G 376 0 47.0M 0
> frosting 48.6G 299G 447 0 55.8M 0
> frosting 48.6G 299G 433 13 54.2M 1.62M
> frosting 48.6G 299G 431 85 53.8M 6.95M
> frosting 48.6G 299G 288 0 36.1M 0
> frosting 48.6G 299G 329 0 41.2M 0
> frosting 48.6G 299G 340 0 42.4M 0
> frosting 48.6G 299G 398 9 49.8M 1.14M
> frosting 48.6G 299G 324 126 40.4M 7.08M
> frosting 48.6G 299G 391 0 48.9M 0
> frosting 48.6G 299G 261 0 32.5M 0
> frosting 48.6G 299G 314 0 39.3M 0
> frosting 48.6G 299G 317 0 39.6M 0
> frosting 48.6G 299G 346 79 43.3M 6.36M
>
> Are these "holes" in write speed normal. Since this is the exact symptom we
> are getting when the network writes start to be slow.
>
> If I instead copy a large single file, I get this IO behavior:
>
> capacity operations bandwidth
> pool alloc free read write read write
> ---------- ----- ----- ----- ----- ----- -----
> frosting 50.1G 298G 7 0 953K 34.5K
> frosting 50.1G 298G 224 215 27.9M 26.8M
> frosting 50.2G 298G 224 364 27.8M 38.6M
> frosting 50.2G 298G 225 57 27.9M 7.23M
> frosting 50.3G 298G 173 477 21.5M 56.1M
> frosting 50.3G 298G 219 0 27.3M 0
> frosting 50.3G 298G 265 353 33.0M 44.0M
> frosting 50.3G 298G 294 172 36.6M 18.3M
> frosting 50.3G 298G 237 436 29.4M 54.2M
> frosting 50.4G 298G 257 108 31.9M 9.69M
> frosting 50.4G 298G 211 382 26.1M 47.5M
> frosting 50.4G 298G 305 162 38.0M 16.4M
> frosting 50.4G 298G 253 369 31.5M 45.9M
> frosting 50.5G 297G 176 177 21.8M 18.0M
> frosting 50.5G 297G 197 167 24.6M 20.9M
> frosting 50.6G 297G 248 375 30.9M 42.8M
> frosting 50.6G 297G 322 605 39.9M 68.0M
> frosting 50.6G 297G 164 36 20.4M 1.57M
> frosting 50.6G 297G 259 96 32.2M 12.0M
>
> which looks more like what I would expect and is also similiar to the IO
> behavior we get if I copy the folder with many files on an ext4 file
> system.
>
> Any help or tips for getting this to work would be highly appreciated!
>
> Cheers,
> Albert Cervin
> _______________________________________________
> freebsd-stable at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at freebsd.org"
>
More information about the freebsd-stable
mailing list