Re: cephfs rm -rf on directory of 160TB /40M files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I have been running some speed tests in POSIX file operations and I noticed even just listing files can take a while compared to an attached HDD. I am wondering is there a reason it takes so long to even just list files.

Here is the test I ran

time for i in {1..100000}; do touch $i; done

Internal HDD:
real 4m37.492s
user 0m18.125s
sys 1m5.040s

Ceph Dir
real 12m30.059s
user 0m16.749s
sys 0m53.451s

~300% faster on HDD

*I am actually ok with this but nice to be quicker.

When I am listing the directory it is taking a lot longer compared to an attached HDD

time ls -1

Internal HDD
real 0m2.112s
user 0m0.560s
sys 0m0.440s

Ceph Dir
real 3m35.982s
user 0m2.788s
sys 0m4.580s

~1000% faster on HDD

*I understand there is some time in the display so what is really making it odd is the following test.

time ls -1 > /dev/null

Internal HDD 
real 0m0.367s
user 0m0.324s
sys 0m0.040s

Ceph Dir
real 0m2.807s
user 0m0.128s
sys 0m0.052s

~700% faster on HDD

My guess the performance issue is with the batch requests as you stated. So I am wondering if the file deletion of the 40M files is not just deleting the files but even just traversing that many files takes a while.

I am running this on 0.94.6 with Ceph Fuse Client
And config
fuse multithreaded = false

Since multithreaded crashes in hammer.

It would be interesting to see the performance on newer versions.

Any thoughts or comments would be good.

On Tue, Apr 5, 2016 at 9:22 AM Gregory Farnum <gfarnum@xxxxxxxxxx> wrote:
On Mon, Apr 4, 2016 at 9:55 AM, Gregory Farnum <gfarnum@xxxxxxxxxx> wrote:
> Deletes are just slow right now. You can look at the ops in flight on you
> client or MDS admin socket to see how far along it is and watch them to see
> how long stuff is taking -- I think it's a sync disk commit for each unlink
> though so at 40M it's going to be a good looong while. :/
> -Greg

Oh good, I misremembered — it's a synchronous request to the MDS, but
it's not a synchronous disk commit. They get batched up normally in
the metadata log. :)
Still, a sync MDS request can take a little bit of time. Someday we
will make the client able to respond to these more quickly locally and
batch up MDS requests or something, but it'll be tricky. Faster file
creates will probably come first. (If we're lucky they can use some of
the same client-side machinery.)
-Greg

>
>
> On Monday, April 4, 2016, Kenneth Waegeman <kenneth.waegeman@xxxxxxxx>
> wrote:
>>
>> Hi all,
>>
>> I want to remove a large directory containing +- 40M files /160TB of data
>> in CephFS by running rm -rf on the directory via the ceph kernel client.
>> After 7h , the rm command is still running. I checked the rados df output,
>> and saw that only about  2TB and 2M files are gone.
>> I know this output of rados df can be confusing because ceph should delete
>> objects asyncroniously, but then I don't know why the rm command still
>> hangs.
>> Is there some way to speed this up? And is there a way to check how far
>> the marked for deletion has progressed ?
>>
>> Thank you very much!
>>
>> Kenneth
>>
>> _______________________________________________
>> ceph-users mailing list
>> ceph-users@xxxxxxxxxxxxxx
>> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com

[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux