Timeline for paper submission (OSDI 14)
Reuse external B-tree, port to RAMCloudChanging object format, supporting writes/reads with multiple keysMemory allocation for indexes1st implementation with mallocs- Real implementation with RAMCloud objects storing tree nodes (04/08 or 04/09)
(3/4 - 3/5)
Master RecoveryRecover index data (piggybacking on RAMCloud recovery to get log data then reconstruct trees)Recover metadata on new index masters
- Schema mgmt (schema includes types and location map)
- Recovery of index partition metadata on coordinator in case of coordinator crash --> transferred to SLIK 1.0 tasks
RPCs for schema mgmt from client to coordinator (create and delete) (2/25)RPCs for schema mgmt from coordinator to masters (3/4)RPCs for schema information from coordinator to client (for lookups) (3/4)- Static partitioning of indexes (needed for scalability) (later)
WriteAPI (2/24)RPCs from client to master (and master to backups) (2/24)RPCs from master to index servers (2/24)Code to write index entries (call to btree / wrapper for btree) (2/28)Code to use this at the data master (basically percolate up) (2/28)
Lookup (range)APIRPC from client to index server and back with primary key hashes – maybe multiple rpcs (if overflow)Code to retrieve required information (3/7)
IndexedReadAPIRPC from client to master server with pk hashes – maybe multiple rpcs (if overflow)Code to retrieve required data (3/7)
End-to-end simple system testEnd-to-end multiobject ops system test (later)
...