Project

General

Profile

Rbd - shared read cache » History » Version 1

Jessica Mack, 06/07/2015 01:22 AM

1 1 Jessica Mack
h1. Rbd - shared read cache
2 1 Jessica Mack
3 1 Jessica Mack
h3. Summary
4 1 Jessica Mack
5 1 Jessica Mack
RBD caching is currently in-memory and per-image. If many images are created from the same base image, memory is wasted trying to cache the parent image for each one. A shared cache would improve cache efficiency, since more of the common parent images could be cached, and there would be no duplicate caching of the same image in many processes. The cache could also be persistent, so there's no need to repopulate it if the host restarts. To simplify the implementation and avoid introducing potential data-losing bugs, this cache could be only a read-only cache, initially just for parent snapshots, which by definition cannot be written to. This avoids any coordination for cache invalidation as well.
6 1 Jessica Mack
7 1 Jessica Mack
h3. Owners
8 1 Jessica Mack
9 1 Jessica Mack
* Name (Affiliation)
10 1 Jessica Mack
* Name (Affiliation)
11 1 Jessica Mack
* Name
12 1 Jessica Mack
13 1 Jessica Mack
h3. Interested Parties
14 1 Jessica Mack
15 1 Jessica Mack
* Josh Durgin (Inktank)
16 1 Jessica Mack
* Haomai Wang (UnitedStack)
17 1 Jessica Mack
* Anip Patel (Arizona State University(student))
18 1 Jessica Mack
19 1 Jessica Mack
h3. Current Status
20 1 Jessica Mack
21 1 Jessica Mack
Currently caching is provided by the ObjectCacher class, which does writeback or writethrough caching. This cache would supplement that with a shared read cache, which may or may not be persistent.
22 1 Jessica Mack
23 1 Jessica Mack
h3. Detailed Description
24 1 Jessica Mack
25 1 Jessica Mack
TBD
26 1 Jessica Mack
27 1 Jessica Mack
h3. Work items
28 1 Jessica Mack
29 1 Jessica Mack
h3. Coding tasks
30 1 Jessica Mack
31 1 Jessica Mack
# Task 1
32 1 Jessica Mack
# Task 2
33 1 Jessica Mack
# Task 3
34 1 Jessica Mack
35 1 Jessica Mack
h3. Build / release tasks
36 1 Jessica Mack
37 1 Jessica Mack
# Task 1
38 1 Jessica Mack
# Task 2
39 1 Jessica Mack
# Task 3
40 1 Jessica Mack
41 1 Jessica Mack
h3. Documentation tasks
42 1 Jessica Mack
43 1 Jessica Mack
# Task 1
44 1 Jessica Mack
# Task 2
45 1 Jessica Mack
# Task 3
46 1 Jessica Mack
47 1 Jessica Mack
h3. Deprecation tasks
48 1 Jessica Mack
49 1 Jessica Mack
# Task 1
50 1 Jessica Mack
# Task 2
51 1 Jessica Mack
# Task 3