Improving CephFS performance by always putting "default" data pool on SSDs?
https://docs.ceph.com/en/reef/cephfs/createfs/ says:
The data pool used to create the file system is the “default” data pool and the location for storing all inode backtrace information, which is used for hard link management and disaster recovery. For this reason, all CephFS inodes have at least one object in the default data pool. If erasure-coded pools are planned for file system data, it is best to configure the default as a replicated pool to improve small-object write and read performance when updating backtraces.
This poses the question: Are normal replicated CephFS installations (metadata on SSDs, data on HDDs) set up with suboptimal performance because they don't do this? If having inodes/backtraces on replicated instead of EC improves performance, shouldn't one expect that putting inodes/backtraces on SSD would improve it even more? From the docs I also cannot really conclude when inotes/backtraces become important. Is that all the time, or only sometimes? Thanks!
Anything on HDDs yields suboptimal performance.
On Feb 4, 2024, at 13:42, Niklas Hambüchen <mail@nh2.me> wrote:
https://docs.ceph.com/en/reef/cephfs/createfs/ says:
The data pool used to create the file system is the “default” data pool and the location for storing all inode backtrace information, which is used for hard link management and disaster recovery. For this reason, all CephFS inodes have at least one object in the default data pool. If erasure-coded pools are planned for file system data, it is best to configure the default as a replicated pool to improve small-object write and read performance when updating backtraces.
This poses the question:
Are normal replicated CephFS installations (metadata on SSDs, data on HDDs) set up with suboptimal performance because they don't do this?
If having inodes/backtraces on replicated instead of EC improves performance, shouldn't one expect that putting inodes/backtraces on SSD would improve it even more?
From the docs I also cannot really conclude when inotes/backtraces become important. Is that all the time, or only sometimes?
Thanks! _______________________________________________ ceph-users mailing list -- ceph-users@ceph.io To unsubscribe send an email to ceph-users-leave@ceph.io
Is the answer that easy? Why does CephFS then not store this info on the metadata pool automatically? Why do I have to conclude this info about how to get better performance for replicated pools, from information only discussed for EC pools?
Linking related thread about inode information: https://lists.ceph.io/hyperkitty/list/ceph-users@ceph.io/thread/Y4CN5QKRQERM...
participants (2)
-
Anthony D'Atri
-
Niklas Hambüchen