Vi presenterar FlashStore, en beständig nyckelvärdesbutik med hög genomströmning, som använder flashminne som en icke-flyktig cache mellan RAM och hårddisk. FlashStore är utformad för att lagra arbetsuppsättningen av nyckelvärden par på flash och använda en flash-avläsning per nyckel uppslagning. När arbetssetet ändras över tiden görs utrymme för den aktuella arbetssetet genom att desting nyligen oanvända nyckel-värde par till hårddisk och återvinning sidor i flash store. FlashStore organiserar nyckel-värde par i en logg-struktur på blixt för att utnyttja snabbare sekventiell skrivprestanda. Den använder en in-memory hash tabell för att indexera dem, med hash kollisioner löst av en variant av gökoo hashing. Hashbordet i minnet lagrar kompakta nyckelsignaturer i stället för fullständiga nycklar för att göra avvägningar mellan RAM-användning och false flash read-operationer. FlashStore kan användas som en hög genomströmningsbeständigt lager av nyckelvärden för ett brett utbud av serverklassapplikationer. Vi jämför FlashStore med BerkeleyDB, ett inbäddat nyckelvärde butiksprogram, körs på hårddisk och blixt separat, för att ta fram prestandavinsten av FlashStore i inte bara använda blixt som en cache ovanför hårddisken, men också i dess användning av flash medvetna algoritmer. Vi använder verkliga data spår från två datacenter program, nämligen Xbox LIVE Primetime online flerspelarspel och inline lagring deduplikation, för att driva och utvärdera utformningen av FlashStore på traditionella och låg ström server plattformar. FlashStore överträffar BerkeleyDB med upp till 60x på dataflöde (ops/sec), upp till 50x på energieffektivitet (ops/Joule) och upp till 85x på kostnadseffektivitet (ops/sec/dollar) på de utvärderade datauppsättningarna.
FlashStore REF använder SSD-enheter som en cache mellan RAM och HDD.
FlashStore: High Throughput Persistent Key-Value Store
{'venue': 'PVLDB', 'journal': 'PVLDB', 'mag_field_of_study': ['Computer Science']}