e-tree: an ever -evolving tree for evolving workloads splaying...

1
daslab.seas.harvard.edu lab Splaying LSM-Trees T. Lively, L. Schroeder, C. Mendizábal Advisor: Stratos Idreos The Problem: LSM-Trees Have Suboptimal Read Performance Recently updated keys are the cheapest to access …but these keys are not necessarily most likely to be read next Copy frequently accessed keys to top Use ’get’ as a trigger for possible ‘put’ …and over time the tree is reorganized for better read performance Compared with the state-of-the-art solution of adding a cache: …and can offer adaptivity and better performance across workloads Splaying dominates cache in the absence of Bloom Filters The Solution: Splaying

Upload: others

Post on 18-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: E-Tree: An Ever -Evolving Tree for Evolving Workloads Splaying …daslab.seas.harvard.edu/doc/undergrad-poster/SIGMOD-UG-splaying-l… · By tracking access patterns, subtrees dynamically

daslab.seas.harvard.edu lab

E-Tree:AnEver-EvolvingTreeforEvolvingWorkloadsGrahamLustiber Advisor:Stratos Idreos

Cache-Conscious Tree

Read OptimizedWrite Optimized

E-Tree

Low OverheadSimple counters on each node with sampling

Key Idea: Mixed memory layouts for mixed workloads across different key/value subranges

B+-Tree

Best of Both Worlds

T0: 95% Writes/5% Read

FlexibleNo restriction on concurrency or operations

Automatic OptimalityConvergence to optimal memory layout

T1: 70% Writes/30% Reads T2: 40% Writes/60% Reads

By tracking access patterns, subtreesdynamically reshape

Setup: 2 billion key/value pairs, with queries to key subranges either read-skewed or write-skewed

Shifting workloads: E-Tree adapts to new access patterns

Split workloads: the more skewed the subranges, the better E-Tree performs

Setup: same as before, but subrange skews randomly flip from read-skewed to write-skewed and vice versa

SplayingLSM-Trees T.Lively,L.Schroeder,C.MendizábalAdvisor:Stratos Idreos

TheProblem:LSM-TreesHaveSuboptimalReadPerformance

Recentlyupdatedkeysarethecheapesttoaccess

…butthesekeysarenotnecessarilymostlikelytobereadnext

CopyfrequentlyaccessedkeystotopUse’get’asatriggerforpossible‘put’

…andovertimethetreeisreorganizedforbetterreadperformance

Comparedwiththestate-of-the-artsolutionofaddingacache:

…andcanofferadaptivity andbetterperformanceacrossworkloads

SplayingdominatescacheintheabsenceofBloomFilters

TheSolution:Splaying