DuckDB 0.6.0 został właśnie wydany i zawiera ulepszenia zapisu na dysku, ładowania danych i nie tylko.

DuckDB, DBMS używany przez Google, Facebook i Airbnb

DuckDB to powstający system zarządzania bazami danych SQL OLAP

Zapowiedziano wydanie nowej wersji DBMS KaczkaDB 0.6.0, wersja w której udoskonalono kompresję danych, oprócz tego, że dodano nowe funkcje, a także ulepszenia pamięci, między innymi.

KaczkaDB łączyć właściwości SQLite takie jak zwartość, możliwość połączenia w postaci zintegrowanej biblioteki, przechowywanie bazy danych w jednym pliku oraz wygodny interfejs CLI, z narzędziami i optymalizacjami do wykonywania zapytań analitycznych obejmujących znaczną część przechowywanych danych, np. które wykonują agregację całej zawartości tabeli lub scalają wiele dużych tabel.

Główne nowe funkcje DuckDB 0.6.0

W tej nowej wersji, która jest prezentowana, podkreślono, że kontynuowano prace nad udoskonaleniem formatu przechowywania, poza tym zaimplementowano tryb zapisu na dysku, gdzie po załadowaniu dużego zestawu danych w jednej transakcji dane są kompresowane i przesyłane strumieniowo do pliku z bazy danych bez czekania na zatwierdzenie transakcji przez polecenie COMMIT.

Kolejną zmianą wyróżniającą się w nowej wersji jest to dodano obsługę równoległego ładowania danych do oddzielnych tabel, co może znacznie zwiększyć szybkość ładowania w systemach wielordzeniowych. Na przykład w starej wersji ładowanie bazy danych zawierającej 150 milionów wierszy na 10-rdzeniowym procesorze zajmowało 91 sekund, aw nowej wersji ta operacja trwa 17 sekund. Istnieją dwa tryby ładowania równoległego: z zachowaniem kolejności rekordów i bez zachowania kolejności.

Do kompresji danych wykorzystywany jest algorytm FSST (Szybka tabela symboli statycznych), która umożliwia pakowanie danych w wierszach przy użyciu wspólnego słownika dopasowań typów. Zastosowanie nowego algorytmu pozwoliło zmniejszyć rozmiar testowej bazy danych z 761 MB do 251 MB.

Do kompresji liczb (DOUBLE i FLOAT) proponuje się algorytmy Chimp i Patas. W porównaniu do poprzedniego algorytmu Gorillas, Chimp zapewnia wyższy poziom kompresji i szybszą dekompresję. Algorytm Patas pozostaje w tyle za szympansem pod względem kompresji, ale jest znacznie szybszy pod względem szybkości dekompresji, która jest mniej więcej taka sama, jak odczyt danych nieskompresowanych.

Wyróżnia się również tym, że został dodany eksperymentalna możliwość ładowania danych z plików CSV w wielu równoległych strumieniach (SET Experimental_parallel_csv=true), co znacznie skraca czas ładowania dużych plików CSV. Na przykład, gdy opcja była włączona, czas pobierania pliku CSV o wielkości 720 MB został skrócony z 3,5 sekundy do 0,6 sekundy.

Z innych zmian które wyróżniają się na tle nowej wersji:

  • Zaimplementowano możliwość równoległego wykonywania operacji tworzenia i zarządzania indeksem.
  • SQL zapewnia możliwość tworzenia zapytań zaczynających się od słowa „FROM” zamiast „SELECT”. W takim przypadku zakłada się, że zapytanie zaczyna się od „WYBIERZ *”.
  • Dodano obsługę wyrażenia „COLUMNS” w języku SQL, umożliwiając wykonywanie operacji na wielu kolumnach bez powielania wyrażenia.
  • Zoptymalizowane zużycie pamięci. Domyślnie na platformie Linux do zarządzania pamięcią używana jest biblioteka jemalloc. Znacząco poprawiona wydajność operacji scalania skrótów, gdy pamięć jest ograniczona.
  • Dodano tryb wyjściowy „.mode duckbox” do CLI, odrzucając środkowe kolumny na podstawie szerokości linii okna terminala). Za pomocą parametru „.maxrows X” można również ograniczyć liczbę wierszy wyjściowych.
  • CLI zapewnia zależne od kontekstu autouzupełnianie danych wejściowych (słowa kluczowe, nazwy tabel, funkcje, nazwy kolumn i nazwy plików są zakończone).
  • Interfejs wiersza polecenia jest domyślnie włączony do wyświetlania wskaźnika postępu zapytania.

w końcu jeśli jesteś chcesz dowiedzieć się więcej na ten tematmożesz sprawdzić szczegóły W poniższym linku.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: AB Internet Networks 2008 SL
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.