1 / 20

이 정 호 jeongho.lee at dankook.ac.kr (DSP LAB)

SILT : A Memory-Efficient, High-Performance Key-Value Store Hyeontaek Lim, Bin Fan, David G. Andersen, Michael Kaminsky Carnegie Mellon University, Intel Labs. 이 정 호 jeongho.lee at dankook.ac.kr (DSP LAB). Contents. Introduction SILT Key-value System Background Basic Design Evaluation

lis
Download Presentation

이 정 호 jeongho.lee at dankook.ac.kr (DSP LAB)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SILT: A Memory-Efficient, High-Performance Key-Value StoreHyeontaek Lim, Bin Fan, David G. Andersen, Michael KaminskyCarnegie Mellon University, Intel Labs 이 정 호 jeongho.lee at dankook.ac.kr (DSP LAB)

  2. Contents • Introduction • SILT Key-value System • Background • Basic Design • Evaluation • Conclusion

  3. Introduction

  4. SILT Key-value System

  5. Cuckoo Hashing

  6. LogStore Tag Offset BUCKET (x) Key x by (x) (x) or, by (x) Hash Table DRAM Flash Inserted K-V entries are appended Log-Structured Data Figure3

  7. LogStore 160-bit hash value low-order bits high-order bits <Associativity> <Hash Function> hash table entry Standard cuckoo hashing allows 50% of table entries to be occupied 48-bit 4-byte offset pointer 15-bit tag SILT a single valid bit SILT cuckoo hashing allows 93% of table entries to be occupied BUCKET Capacity <= 4 Tag Offset Hash Table

  8. LogStore 4 4

  9. HashStore HashStore LogStore Tag Offset h(K2) h(K4) in-memory h(K1) h(K3) DRAM Flash K3 K4 K1 • K2 on-flash Hash order Insertion order CONVERT Figure4

  10. HashStore HashStore LogStore Tag Tag Offset h(K2) h(K2) h(K4) h(K4) in-memory h(K1) h(K1) h(K3) h(K3) DRAM Flash K1 • K2 K3 K4 K2 • K4 K1 K3 on-flash Hash order Insertion order CONVERT Figure4

  11. SortedStore • Stores (key,value) entries sorted by key on flash • Entropy-coded trie • No insertion/Deletions • Highly compressed (0.4 B/entry)

  12. 개셉션(유머)

  13. SortedStore

  14. Evaluation

  15. Full System Benchmark • Use YCSB • 10% PUT/90% GET • 50% PUT/50% GET • SILT INSTANCE=4 • 16 Client Threads • L->H(10K entries/sec) • H->S(20K entries/sec)

  16. Index Microbenchmark

  17. Landscape: Where We Are Read amplification SkimpyStash HashCache BufferHash FlashStore FAWN-DS SILT Memory overhead (bytes/entry)

  18. Conclusion • SILT is memory efficient, high-performance flash-based k-v store • Two new in-memory index structure • partial-key cuckoo hashing • entropy-coded tiries • It provides • high write speed • high read throughput • little memory • no single store • Store : only 0.7bytes of memory per entry • 1.01 flash reads to service a lookup(<=400㎲) • Full source code is available • https://github.com/silt/silt

  19. Q & A 아마 난 대답 못할꺼야 아직 발표자 4(死)명 더 남았다

  20. References 뻐꾹함수: http://en.wikipedia.org/wiki/Cuckoo_hashing SILT발표자료 : http://www.google.co.kr/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCcQFjAA&url=http%3A%2F%2Fwww.sigops.org%2Fsosp%2Fsosp11%2Fcurrent%2F2011-Cascais%2F01-lim.pptx&ei=84PDT5LMBouziQfVr4yWCg&usg=AFQjCNHzvQ-aDXFFj9kIcYVB5AJVCNvIxQ SILT(Github source) : https://github.com/silt/silt

More Related