Micron wypuszcza silnik pamięci masowej HSE 3.0 zoptymalizowany pod kątem dysków SSD

Firma Micron Technology, specjalizująca się w produkcji pamięci DRAM i flash, opublikowała wydanie silnika pamięci masowej HSE 3.0 (Heterogeneous-memory Storage Engine), zaprojektowanego z uwzględnieniem specyfiki użytkowania dysków SSD i pamięci tylko do odczytu ( NVDIMM). Silnik został zaprojektowany jako biblioteka do osadzania w innych aplikacjach i obsługuje przetwarzanie danych w formacie klucz-wartość. Kod HSE jest napisany w języku C i jest objęty licencją Apache 2.0.

HSE jest zoptymalizowany nie tylko pod kątem maksymalnej wydajności, ale także trwałości w przypadku różnych klas dysków SSD. Wysoką prędkość działania osiągnięto dzięki hybrydowemu modelowi pamięci masowej – najważniejsze dane buforowane są w pamięci RAM, co ogranicza liczbę dostępów do dysku. Silnik może być wykorzystany do niskopoziomowego przechowywania danych w NoSQL DBMS, magazynów oprogramowania (SDS, Software-Defined Storage) takich jak Ceph i Scality RING, platform do przetwarzania dużych ilości danych (Big Data), obliczeń dużej wydajności (HPC ) systemy, urządzenia Internetu rzeczy (IoT) oraz rozwiązania dla systemów uczenia maszynowego. Jako przykład integracji silnika z projektami firm trzecich przygotowano wersję dokumentową DBMS MongoDB, skonwertowaną do obsługi HSE.

Główne cechy BHP:

  • Obsługa operatorów standardowych i rozszerzonych do przetwarzania danych w formacie klucz/wartość;
  • Pełna obsługa transakcji z możliwością izolowania wycinków pamięci poprzez tworzenie migawek (migawki mogą być również wykorzystywane do utrzymywania niezależnych kolekcji w jednym magazynie);
  • Możliwość używania kursorów do iteracji po danych w widokach opartych na migawkach;
  • Model danych zoptymalizowany pod kątem mieszanych typów obciążeń;
  • Elastyczne mechanizmy zarządzania niezawodnością pamięci masowej;
  • Konfigurowalne schematy orkiestracji danych (dystrybucja pomiędzy różnymi typami pamięci znajdującej się w magazynie);
  • Biblioteka z interfejsem API w języku C, która może dynamicznie łączyć się z dowolną aplikacją. Dostępność powiązań dla Pythona i Javy;
  • Obsługa przechowywania kluczy i danych w formie skompresowanej.
  • Możliwość skalowania do terabajtów danych i setek miliardów kluczy w pamięci;
  • Wydajne przetwarzanie tysięcy równoległych operacji;
  • Możliwość wykorzystania dysków SSD różnych klas w jednej pamięci masowej w celu optymalizacji wydajności i wydłużenia żywotności dysku.

Znacząca zmiana numeru wersji w HSE 3.0 wynika ze zmian w interfejsie API, CLI, opcjach konfiguracji, interfejsie REST i formacie pamięci, które naruszają kompatybilność wsteczną. W nowej wersji skupiono się na optymalizacji przechowywania danych w celu poprawy wydajności w przypadku niektórych krytycznych obciążeń. Wśród najbardziej znaczących ulepszeń:

  • Wydajność operacji kursora jest teraz niezależna od długości filtra, co pozwala na iterację po klawiszach za pomocą kursora z dowolnymi filtrami bez zmniejszania przepustowości.
  • Zwiększono wydajność odczytu i zapisu w sytuacjach, gdy stosowane są monotonicznie rosnące klucze, na przykład podczas przechowywania wycinków wartości parametrów rejestrowanych w określonych odstępach czasu w systemach monitorujących, platformach finansowych i systemach odpytywania stanów czujników.
  • Interfejs API zapewnia możliwość kontrolowania kompresji na poziomie poszczególnych wartości, umożliwiając przechowywanie zarówno skompresowanych, jak i nieskompresowanych rekordów w tym samym magazynie.
  • Dodano nowe tryby otwierania KVDB, umożliwiające tworzenie zapytań do bazy danych w magazynach tylko do odczytu.

Źródło: opennet.ru

Dodaj komentarz