Tasks for SLIK 0.5

Tasks for SLIK 0.5

Timeline for paper submission (OSDI 14)

  • Reuse external B-tree, port to RAMCloud

  • Changing object format, supporting writes/reads with multiple keys

  • Memory allocation for indexes

    • 1st implementation with mallocs

    • Real implementation with RAMCloud objects storing tree nodes (04/08 or 04/09) (3/4 - 3/5)

  • Master Recovery

    • Recover 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)

  • Write

    • API (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)

    • API

    • RPC from client to index server and back with primary key hashes – maybe multiple rpcs (if overflow)

    • Code to retrieve required information (3/7)

  • IndexedRead

    • API

    • RPC 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 test

  • End-to-end multiobject ops system test (later)


 

04/08 - 04/09: Ankita: Related work check which system to benchmark against

04/09 - 04/15: Ankita: Talk to Chris Re about related work

04/09 - 04/15: Ankita: Really crappy first draft: except perf, related work, conclusion

04/09: Arjun: Integrate his allocation code with the system

04/09: Ashish: Trivial benchmark: indexed write, lookup + indexedRead latency in RAMCloud system

04/11: Ashish: Setup MySQL: Install server, write a client that successfully does a write and read

04/11: Arjun: Setup Cassandra: Install server, write a client that successfully does a write and read

04/15: Ashish+Arjun: Benchmark:

  • End-to-end lookup+indexedRead

  • For n indexes (vary n), small num and large num of objects

  • At least single node (distributed if possible)

  • MySQL, Cassandra, RAMCloud

.....

04/22: Full benchmark

05/01: OSDI Deadline


Apr 17: Experiment 1 (rm), Experiment 2(rm)

Apr 21: Experiment 3 (rm)

 

--------------------------------------------------------------------------------------

March 14: First correct (acc to tests) implementation done

March 15: Start writing paper draft

March 15: Start benchmarking

March 23: Basic benchmarking done (this will uncover issues)

March 24: Implementation: Start fixing issues discovered

March 24 - 31: related work research + basic benchmarks of other systems

April 5: First draft

April 5: Bug free (for those discovered during benchmarking etc) implementation

April 10: Final benchmarks done + nice graphs

April 14: Second draft

April 23: (Almost) Final draft ready

May 1: OSDI Deadline