In addition to the standard file, block, and RGW interfaces, Ceph exposes a powerful low-level interface to RADOS objects. This talk will focus on one lesser utilized aspect of this interface called object-classes. Object classes in Ceph allow for the creation of application-specific object interfaces whose implementations execute within the storage system itself. This provides developers with a powerful tool for the construction of transactional interfaces that can utilize remote CPU, memory, and I/O resources within each OSD. This talk will explore how these custom interfaces are generally used, common design patterns, and how developers can get started developing with object classes using C++ and Lua.
Noah is a software engineer at Red Hat working on Ceph orchestration in Kubernetes. He received his Ph.D. from U.C. Santa Cruz in 2018, and lives in San Francisco.