Nowa wersja DBMS ArangoDB 3.6

opublikowany wydanie wielofunkcyjnego systemu DBMS ArangoDB 3.6, który zapewnia elastyczne modele przechowywania dokumentów, wykresów i danych klucz-wartość. Praca z bazą danych odbywa się poprzez język zapytań przypominający SQL AQL lub poprzez specjalne rozszerzenia w JavaScript. Metody przechowywania danych są zgodne z ACID (atomowość, spójność, izolacja, trwałość), obsługują transakcje i zapewniają skalowalność poziomą i pionową. Systemem DBMS można zarządzać poprzez interfejs sieciowy lub klienta konsolowego Arango SH. Kod ArangoDB dystrybuowane przez na licencji Apache 2. Projekt napisany jest w języku C i JavaScript.

Kluczowe cechy ArangoDB:

  • Możliwość obejścia się bez definiowania schematu przechowywania danych (Schema-free) – dane są strukturyzowane w formie dokumentów, w których metadane i informacje o strukturze są oddzielone od danych użytkownika;
  • Wsparcie wykorzystania ArangoDB jako serwera dla aplikacji webowych w języku JavaScript z możliwością dostępu do bazy poprzez REST/Web API;
  • Używanie JavaScript dla aplikacji przeglądarkowych uzyskujących dostęp do bazy danych oraz dla procedur obsługi wykonywanych po stronie DBMS;
  • Architektura wielowątkowa rozkładająca obciążenie na wszystkie rdzenie procesora;
  • Elastyczny model przechowywania danych, który może łączyć pary klucz-wartość, dokumenty i parametry definiujące relacje między rekordami (zapewnia narzędzia do przechodzenia przez wierzchołki wykresu);
  • W jednym zapytaniu można mieszać różne modele reprezentacji danych (dokumenty, wykresy i pary klucz-wartość), co upraszcza agregację heterogenicznych danych;
  • Obsługa zapytań o scalanie (JOIN);
  • Możliwość wyboru typu indeksu odpowiadającego rozwiązywanym zadaniom (na przykład możesz użyć indeksu do wyszukiwania pełnotekstowego);
  • Konfigurowalna niezawodność: sama aplikacja może określić, co jest dla niej ważniejsze: wyższa niezawodność czy wyższa wydajność;
  • Wydajna pamięć masowa, która w pełni wykorzystuje nowoczesny sprzęt (taki jak dyski SSD) i może korzystać z dużych pamięci podręcznych;
  • Transakcje: możliwość uruchamiania zapytań dotyczących wielu dokumentów lub kolekcji jednocześnie z opcjonalną spójnością i izolacją transakcji;
  • Obsługa replikacji i shardingu: możliwość tworzenia konfiguracji master-slave i dystrybucji zestawów danych na różne serwery w zależności od określonej funkcji;
  • Dostarczona jest platforma JavaScript do tworzenia mikrousług Foxx, wykonywany wewnątrz serwera DBMS z bezpośrednim dostępem do danych.

Zmianyzaproponowane w wersji ArangoDB 3.6:

  • Zoptymalizowano wydajność podzapytań oraz operacji UPDATE i REPLACE;
  • Zaimplementowano możliwość równoległego wykonywania zapytań AQL, co pozwala na skrócenie czasu gromadzenia danych rozproszonych po różnych węzłach klastra;
  • Wdrożono opóźnioną materializację dokumentów, co pozwala w niektórych sytuacjach wyeliminować konieczność całkowitego odzyskania nieistotnych dokumentów;
  • Podczas skanowania dokumentów zapewnione jest wczesne odrzucanie dokumentów, które nie pasują do określonego filtra;
  • Udoskonalono wyszukiwarkę pełnotekstową ArangoSearch, obsługującą ranking na podstawie podobieństwa danych. Dodano obsługę analizatora do autouzupełniania zapytań, zaimplementowano funkcje TOKENS() i PHRASE() do dynamicznego generowania zapytań;
  • Dodano ustawienie maxRuntime umożliwiające selektywne ograniczenie czasu wykonania zapytania;
  • Dodano opcję „—query.optimizer-rules” do kontrolowania aktywacji niektórych optymalizacji podczas przetwarzania zapytań;
  • Rozszerzono możliwości organizacji pracy klastra. Dodano opcję „—cluster.upgrade” umożliwiającą wybranie trybu aktualizacji dla węzłów w klastrze;
  • Dodano obsługę protokołu TLS 1.3 w celu szyfrowania kanału komunikacji pomiędzy klientem a serwerem (domyślnie klient w dalszym ciągu korzysta z protokołu TLS 1.2).

Źródło: opennet.ru

Dodaj komentarz