HSE, en motor med öppen källkod, optimerad SSE för SSD

Micron Technology (ett företag specialiserat på produktion av DRAM och flashminne) tillkännagav introduktionen av en ny motor kallad "HSE" (Heterogeneous-memory Storage Engine), som utvecklades med hänsyn till de specifika egenskaperna vid användning i SSD-enheter baserade på NAND-flashminne (X100, TLC, QLC 3D NAND) eller skrivskyddat minne (NVDIMM).

Motorn är utformad som ett bibliotek för inbäddning i andra applikationer och stöder nyckel-värde-databehandling . HSE-koden är skriven i C och distribueras under Apache 2.0-licensen.

Bland motorns tillämpningar finns lågnivålagring av data i NoSQL DBMS, programvarudefinierad lagring (SDS) som Ceph och Scality RING, plattformar för bearbetning av stora mängder data (Big Data), högpresterande datorsystem (HPC), sakernas internet (IoT) och lösningar för maskininlärningssystem.

HSE är optimerad inte bara för maximal prestanda utan även för att säkerställa hållbarheten hos olika SSD-klasser. Hög hastighet uppnås genom en hybridlagringsmodell: den mest relevanta informationen lagras i cachen, vilket minskar antalet diskåtkomster.

Som ett exempel på att integrera den nya motorn i tredjepartsprojekt förbereddes en dokumentinriktad version av MongoDB DBMS som översattes för att använda HSE.

Teknologiskt sett är HSE baserad på en ytterligare kärnmodul, mpool , som implementerar ett specialiserat gränssnitt för att lagra objekt för solid state-diskar, med hänsyn till deras kapacitet och egenskaper, vilket möjliggör fundamentalt olika hastighets- och hållbarhetsfunktioner. Mpool är också en öppen källkodsutveckling av Micron Technology, släppt samtidigt med HSE, men det sticker ut som ett separat infrastrukturprojekt. Mpool förutsätter användning av permanent minne och zonlagring, men för närvarande stöds endast traditionella SSD-diskar.

Prestandatester med YCSB- paketet (Yahoo Cloud Serving Benchmark) visade en signifikant prestandaökning vid användning av 2 TB lagringsutrymme med 1 KB datablockbearbetning. En särskilt signifikant prestandaökning observerades i testet med en jämn fördelning av läs- och skrivoperationer.

Till exempel visade sig MongoDB med HSE-motorn vara ungefär 8 gånger snabbare än versionen med standardmotorn WiredTiger, och RocksDB DBMS-motorn överträffade HSE med mer än 6 gånger. Utmärkta prestandaindikatorer är också tydliga i testerna, som innehöll 95 % läsoperationer och endast 5 % ändringar eller tillägg.

Ett annat test som utförs omfattar endast läsoperationer, det visar en vinst på cirka 40%. Ökningen av överlevnad för SSD-enheter under skrivoperationer jämfört med den RocksDB-baserade lösningen beräknas vara sju gånger.

Huvudfunktioner i HSE:

  • Stöd för standard- och avancerade operatörer att bearbeta data i nyckel / värde-format;
  • Fullständigt transaktionsstöd och med möjligheten att isolera lagringssegment genom att skapa ögonblicksbilder (ögonblicksbilder kan också användas för att underhålla separata samlingar i en butik).
  • Möjlighet att använda markörer för att korsa data i ögonblicksbildbaserade representationer.
  • En datamodell optimerad för blandade belastningstyper i ett enda arkiv.
  • Flexibla mekanismer för att hantera lagringssäkerhet.
  • Anpassningsbara system för dataorganisation (distribution via olika typer av minne som finns i förvaret).
  • Ett bibliotek med ett C API som kan kopplas dynamiskt till alla applikationer.
    Möjligheten att skala till terabyte data och hundratals miljarder nycklar i lagring.
  • Effektiv bearbetning av tusentals parallella operationer.
  • Betydande ökning av bandbredd, minskad latens och ökad läs / skriv för olika typer av arbetsbelastningar jämfört med typiska lösningar.
  • Möjligheten att använda olika SSD-klasser i samma lagring för att optimera prestanda och hållbarhet.

Du kan komma åt motorkoden från följande länk.


Lägg till som prioriterad källa i Google