Project

General

Profile

Osd - rados io hints improvements

Summary

I/O hints should be used more widely in Ceph [link]. With this feature, OSD is able to use more flexible policy to control the memory usage. E.g, rados client would tell OSD to cache some hot objects that might be re-read later, while the cold objects might be got kicked out of the memory. This would get better response time for the clients also a lower load in OSD server side. We feel this is a good feature for Ceph and we'd like to make more clients to support I/O hints.

See the progress? #11046

Owners

Interested Parties

  • Guang Yang (Yahoo!)
  • Danny Al-Gaaf (Deutsche Telekom)
  • Name

Current Status

Currently rados I/O was added to Ceph in Hammer. It's already supported in librbd/librados. We plan to add more supports in libcephfs. In a cache tier setup, I/O hints need to inserted be more precisely .

Detailed Description

  1. More clients support. There're many client use cases with Ceph. It's interesting to give some example I/O hints usage in different clients. We'll try to add supports to libcephfs
  2. I/O hints in cache tier. There're some optimization points when setup a cache tier Ceph cluster using I/O hints. E,g., one object cached in CT might be get cached in memory of BT again. This is quite unnecessary usually. With I/O hints we could let BT to drop the cache.

Work items

Coding tasks

  1. Task 1
  2. Task 2
  3. Task 3

Build / release tasks

  1. Task 1
  2. Task 2
  3. Task 3

Documentation tasks

  1. Task 1
  2. Task 2
  3. Task 3

Deprecation tasks

  1. Task 1
  2. Task 2
  3. Task 3