HSE, odprtokodni sistem za shranjevanje, optimiziran SSE za SSD

Micron Technology (podjetje, specializirano za proizvodnjo DRAM in flash pomnilnikov) je napovedalo predstavitev novega motorja z imenom "HSE" (Heterogeneous-memory Storage Engine), ki je bil razvit ob upoštevanju specifičnih značilnosti uporabe v SSD enotah, ki temeljijo na NAND flash (X100, TLC, QLC 3D NAND) ali bralnem pomnilniku (NVDIMM).

Mehanizem je zasnovan kot knjižnica za vgradnjo v druge aplikacije in podpira obdelavo podatkov ključ-vrednost . Koda HSE je napisana v jeziku C in distribuirana pod licenco Apache 2.0.

Med aplikacijami mehanizma so shranjevanje podatkov na nizki ravni v NoSQL DBMS, programsko definirano shranjevanje (SDS), kot sta Ceph in Scality RING, platforme za obdelavo velikih količin podatkov (Big Data), visokozmogljivi računalniški sistemi (HPC), naprave interneta stvari (IoT) in rešitve za sisteme strojnega učenja.

HSE je optimiziran ne le za maksimalno zmogljivost , temveč tudi za zagotavljanje vzdržljivosti različnih razredov SSD-jev. Visoka hitrost je dosežena s hibridnim modelom shranjevanja: najpomembnejši podatki so shranjeni v predpomnilniku, kar zmanjša število dostopov do diska.

Kot primer vključitve novega motorja v tuje projekte je bila pripravljena dokumentno usmerjena različica DBMS MongoDB, ki je bila prevedena v uporabo HSE.

Tehnološko HSE temelji na dodatnem osrednjem modulu, mpool , ki implementira specializiran vmesnik za shranjevanje objektov za SSD diske, pri čemer upošteva njihove zmogljivosti in značilnosti, s čimer omogoča bistveno drugačne hitrosti in vzdržljivosti. Mpool je prav tako odprtokodni razvoj podjetja Micron Technology, izdan sočasno s HSE, vendar izstopa kot ločen infrastrukturni projekt. Mpool predvideva uporabo trajnega pomnilnika in conskega shranjevanja, vendar so trenutno podprti le tradicionalni SSD diski.

Testi zmogljivosti z uporabo paketa YCSB (Yahoo Cloud Serving Benchmark) so pokazali znatno povečanje zmogljivosti pri uporabi 2 TB prostora za shranjevanje z obdelavo 1 KB podatkovnih blokov. Posebej znatno povečanje zmogljivosti je bilo opaženo pri testu z enakomerno porazdelitvijo operacij branja in pisanja.

MongoDB z motorjem HSE se je na primer izkazal za približno 8-krat hitrejšega od različice s standardnim motorjem WiredTiger, motor DBMS RocksDB pa je HSE prekosil za več kot 6-krat. Odlični kazalniki zmogljivosti so očitni tudi v testih, ki so vključevali 95 % operacij branja in le 5 % sprememb ali dodatkov.

Drugi opravljeni test vključuje samo bralne operacije in kaže približno 40-odstotni dobiček. Povečanje preživetja SSD-jev med operacijami pisanja v primerjavi z rešitvijo, ki temelji na RocksDB, je ocenjeno na 7-krat.

Ključne značilnosti HSE:

  • Podpora za standardne in napredne operaterje za obdelavo podatkov v obliki ključ / vrednost;
  • Popolna podpora za transakcije in možnost izolacije segmentov pomnilnika z ustvarjanjem posnetkov (posnetke lahko uporabite tudi za vzdrževanje ločenih zbirk v trgovini).
  • Sposobnost uporabe kazalcev za prehod podatkov v predstavitvah, ki temeljijo na posnetkih.
  • Podatkovni model, optimiziran za mešane vrste obremenitve v enem skladišču.
  • Prilagodljivi mehanizmi za upravljanje zanesljivosti shranjevanja.
  • Prilagodljive sheme orkestracije podatkov (distribucija skozi različne vrste pomnilnika, ki so v repozitoriju).
  • Knjižnica s API-jem C. ki se lahko dinamično poveže s katero koli aplikacijo.
    Sposobnost prilagajanja na terabajte podatkov in na stotine milijard ključev v pomnilniku.
  • Učinkovita obdelava tisoč vzporednih operacij.
  • Znatno povečanje pasovne širine, zmanjšana zakasnitev in večja bralnost / pisanje za različne vrste delovne obremenitve v primerjavi s tipičnimi rešitvami.
  • Možnost uporabe različnih razredov SSD-jev v istem pomnilniku za optimizacijo zmogljivosti in trajnosti.

Do kode motorja lahko dostopate na naslednji povezavi.


Dodaj kot prednostni vir v Googlu