Workflowof an in-memory Key-Value StoreNetworkProcessingMemoryManagementIndexOperationsAccessValue
Workflow of an in-memory Key-Value Store Network Processing Memory Management Index Operations Access Value
Workflowofa Typical Key-Value StoreTcP/IPProcessingRequestParsingNetwork ProcessingSETGETDELETEExtractKeysExtractKeysExtractKey&ValueMemoryMemoryNotFullFullMemoryManagementEvictAllocateInsert intoSearchinDeletefromIndexOperationsIndexIndexIndexRead&SendValueAccessValue
Workflow of a Typical Key-Value Store DELETE SET GET Extract Keys TCP/IP Processing Request Parsing Extract Keys Extract Key&Value Network Processing Memory Full Memory Not Full Evict Allocate Memory Management Delete from Index Insert into Index Search in Index Index Operations Read & Send Value Access Value
Where does time go in KV-Store MICA [NSDI'14]Networkprocessing&MemoryManagement0.75IndexOperations0.50.2501)128BKey2)32BKey4) 8B Key3)16BKey1024BValue512BValue8BValue64BValueAccessValueFourDataSetsIndexoperation becomesoneofthemajorbottlenecks
Where does time go in KV-Store MICA [NSDI’14] 0 0.25 0.5 0.75 1 1) 128B Key 1024B Value 2) 32B Key 512B Value 3) 16B Key 64B Value 4) 8B Key 8B Value Execution Time Percentage Four Data Sets Index operation becomes one of the major bottlenecks 9 Network processing & Memory Management Index Operations Access Value
Data Workflow of Key-Value StoresQueryNetworkProcessing&MemoryManagementHashTableRandom80MemoryAccesses口IndexOperationAccessValue
Data Workflow of Key-Value Stores Query Network Processing & Memory Management Index Operation Access Value Random Memory Accesses Hash Table
Random MemoryAccesses ofIndexing areExpensiveSequentialmemoryaccessRandommemoryaccessasoe300240180120CPU:IntelXeonE5-2650v260Memory:1600MHzDDR3036812574910.11.1213141516Number ofMemoryAccesses
Random Memory Accesses of Indexing are Expensive 0 60 120 180 240 300 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Time (nanosecond) Number of Memory Accesses Sequential memory access Random memory access 2 7 3 16 CPU: Intel Xeon E5-2650v2 Memory: 1600 MHz DDR3