Jak deduplikacja wymienia pamięć RAM na miejsce do przechowywania na domowym NAS?

Eva Wong jest Technicznym pisarzem i stałym majsterkowiczem w ZimaSpace. Całe życie geek z pasją do homelabów i oprogramowania open-source, specjalizuje się w tłumaczeniu skomplikowanych koncepcji technicznych na przystępne, praktyczne przewodniki. Eva wierzy, że samodzielne hostowanie powinno być zabawą, a nie czymś onieśmielającym. Poprzez swoje samouczki umożliwia społeczności rozwiewanie tajemnic konfiguracji sprzętu, od budowy pierwszego NAS po opanowanie kontenerów Docker.

Deduplikacja oszczędza pojemność domowego NAS przez przechowywanie jednej kopii powtarzających się danych, ale potrzebuje indeksu możliwego do przeszukiwania, który konkuruje o pamięć RAM z każdym innym serwisem.

Wymiana nie polega na stałej liczbie gigabajtów pamięci na terabajt dysku. Zmienia się w zależności od rozmiaru bloku, ilości unikalnych danych, rozmiaru wpisu indeksu, zakresu deduplikacji i zachowania pamięci podręcznej. Pula pełna powtarzających się kopii zapasowych może uzasadniać koszt; archiwum multimediów pełne unikalnych plików może zbudować duży indeks, oszczędzając prawie nic.

Koszt pamięci RAM wynika z wyszukiwania istniejących bloków

Deduplikacja na poziomie bloków dzieli nadchodzące dane na jednostki, oblicza odcisk palca dla każdej jednostki i sprawdza, czy ten odcisk już istnieje. Nowy blok jest zapisywany i indeksowany. Pasujący blok jest zastępowany odniesieniem do przechowywanej kopii. Oryginalny opis deduplikacji odcisków bloków pokazuje, że indeks musi mapować każdy sumę kontrolną na lokalizację przechowywania i liczbę referencji.

Pamięć RAM jest cenna, ponieważ to wyszukiwanie odbywa się w ścieżce zapisu. Przechowywanie często używanych wpisów odcisków w pamięci pozwala NAS-owi odpowiedzieć „czy zapisałem ten blok?” bez oczekiwania na dysk. Systemy na poziomie plików mogą używać grubszych rekordów i mniej metadanych, podczas gdy systemy na poziomie bloków znajdują duplikaty wewnątrz zmienionych plików kosztem znacznie większej liczby wpisów indeksu.

Ten sam mechanizm pojawia się w prostszych systemach kopii zapasowych: pliki są identyfikowane za pomocą odcisków palców, rozpoznaje się dopasowanie i unika się kolejnej fizycznej kopii. Praktyczny przykład identyfikacji plików wyraźnie pokazuje tę różnicę. Zysk pojemności pochodzi ze współdzielonych danych; koszt pamięci RAM wynika z zapamiętania wystarczającej liczby odcisków, aby szybko znaleźć to współdzielenie.

Liczba unikalnych bloków ma większe znaczenie niż surowy rozmiar puli

Indeks deduplikacji rośnie głównie wraz z liczbą unikalnych fragmentów, które musi opisać, a nie samą reklamowaną pojemnością NAS. Mniejsze bloki mogą wykrywać duplikację wewnątrz częściowo zmienionych plików, ale tworzą więcej odcisków palców dla tej samej ilości unikalnych danych. Większe bloki zmniejszają rozmiar indeksu, lecz jedna zmieniona część może sprawić, że znacznie większa jednostka będzie wyglądać na unikalną.

Skład obciążenia decyduje, czy te wpisy przynoszą znaczące oszczędności miejsca. Historie kopii zapasowych i sklonowane obrazy systemów często powtarzają duże obszary, podczas gdy zdjęcia, filmy, archiwa i zaszyfrowane dane zwykle zawierają mniej identycznych bloków. Szczegółowe wyjaśnienie czynników deduplikacji kopii zapasowych pokazuje, dlaczego retencja, tempo zmian, typ danych i zakres deduplikacji wpływają na osiągalny współczynnik.

Obciążenie domowego NAS Wzór duplikacji Zachowanie indeksu Prawdopodobny zwrot pojemności
Powtarzające się pełne kopie zapasowe Wiele niezmienionych bloków między wersjami Nowe wpisy głównie odpowiadają zmienionym danym Często wysokie
Sklonowane obrazy maszyn wirtualnych lub systemów Wspólne bloki systemu operacyjnego i aplikacji Indeksowanie o wysokiej rozdzielczości może znaleźć powtarzające się regiony Umiarkowanie do wysokiego
Wersjonowane dokumenty i foldery projektów Częściowe powtórzenia całych plików i podplików Zależy od wzoru edycji i granic bloków Zmienna
Biblioteki zdjęć, muzyki i wideo Przeważnie unikalne, już zakodowane pliki Unikalne wpisy kumulują się przy niewielkim ponownym użyciu Zazwyczaj niskie
Zaszyfrowane lub skompresowane kopie zapasowe Powtarzające się dane źródłowe mogą już nie pasować Indeks rośnie, podczas gdy liczba dopasowań maleje Często bardzo niskie

Migawki wymagają szczególnej uwagi w tym porównaniu. System plików copy-on-write może już współdzielić niezmienione bloki między migawkami, więc logiczne podobieństwo dwóch widoków migawki nie oznacza automatycznie dodatkowych fizycznych kopii, które deduplikacja mogłaby usunąć. Planowanie pojemności powinno opierać się na zmierzonych danych logicznych i fizycznych, a nie tylko na liczbie plików.

Deduplikacja wbudowana i po przetworzeniu rozliczana jest w różnych momentach

Wbudowane odciskanie palców deduplikacji i sprawdzanie danych odbywa się przed zakończeniem zapisu. Unika to w ogóle zapisywania zduplikowanych bloków, dzięki czemu natychmiast chroni wolne miejsce, ale obliczanie haszy i wyszukiwanie w indeksie odbywa się bezpośrednio w czasie opóźnienia na pierwszym planie. To sprawia, że lokalność RAM jest szczególnie ważna podczas tworzenia kopii zapasowych, zapisu maszyn wirtualnych i jednoczesnej aktywności klientów.

Deduplikacja po procesie najpierw zapisuje dane, a potem je skanuje. Początkowa ścieżka zapisu jest prostsza, ale NAS potrzebuje tymczasowej pojemności na cały nadchodzący zestaw danych i później zużywa CPU, pamięć i przepustowość dysku na proces w tle. Porównanie deduplikacji inline i po procesie wyjaśnia, dlaczego jedna metoda sprzyja natychmiastowej efektywności przestrzeni, podczas gdy druga może zachować szybkość zapisu na pierwszym planie.

Żaden model czasowy nie usuwa indeksu. Zmienia się tylko moment, w którym system go buduje, zapytuje i aktualizuje. Lekko używany cel archiwalny może mieć czas na skanowanie w tle, podczas gdy zawsze aktywna pula aplikacji może odczuwać to skanowanie jako opóźnioną interferencję. W związku z tym kompromis dotyczy pojemności względem zarówno pamięci RAM, jak i rezerwy harmonogramu, a nie tylko samej pamięci RAM.

Gdy indeks opuszcza pamięć RAM, zapisy stają się losowymi wyszukiwaniami

Tabela deduplikacji może być przechowywana na nośniku, podczas gdy jej aktywne wpisy są buforowane w pamięci. Wydajność zmienia się, gdy aktywny indeks przestaje mieścić się w tym buforze. Każde nieudane wyszukanie odcisku palca może wymagać małego, losowego odczytu metadanych, zanim NAS zdecyduje, czy zapisać nowy blok, czy zwiększyć istniejące odwołanie.

To jest złe dopasowanie do dysków twardych, gdzie losowy dostęp I/O jest znacznie wolniejszy niż transfer sekwencyjny. Obecne wytyczne dotyczące tabeli deduplikacji opisują tabelę jako strukturę haszującą na dysku, której buforowane wpisy zużywają pamięć, a błędy mogą zamieniać zapisy w losowe odczyty dysku. Pokazuje to również, dlaczego dokładne zapotrzebowanie na pamięć powinno być szacowane na podstawie liczby unikalnych bloków i rozmiaru wpisu, a nie uniwersalnego sloganu RAM na terabajt.

Większa ilość pamięci RAM zwiększa szansę na szybkie wyszukiwania, ale nie gwarantuje niskich opóźnień w innych miejscach. Zduplikowane układy mogą również rozpraszać odwołania używane podczas przywracania lub odczytu. Badania nad fragmentacją odczytu deduplikacji pokazują, dlaczego system może zaoszczędzić znaczną pojemność, a mimo to potrzebować strategii układu i buforowania, aby zachować wydajność przywracania.

Wymiana opłaca się tylko wtedy, gdy dane duplikujące przewyższają indeks

Przydatne porównanie to nie surowy rozmiar NAS do zainstalowanej pamięci RAM. To liczba fizycznych bajtów zaoszczędzonych w stosunku do pamięci, czasu CPU, I/O metadanych i kosztu układu odczytu potrzebnych do ich uniknięcia. Wysoki logiczno-fizyczny współczynnik deduplikacji może uzasadniać duży indeks; współczynnik bliski 1:1 oznacza, że NAS płaci za udowodnienie, że prawie każdy blok jest unikalny.

Zmierz przewidywane obciążenie, zanim potraktujesz deduplikację jako pojemność, która już istnieje. Przydatne obserwacje to liczba unikalnych bloków, średni rozmiar bloku, współczynnik deduplikacji, rozmiar indeksu na dysku, rozmiar indeksu w pamięci podręcznej, wskaźnik trafień w pamięć podręczną, użycie CPU, opóźnienie zapisu i przepustowość przy przywracaniu. Przeprowadź test na reprezentatywnych kopiach zapasowych lub obrazach, a nie na plikach wypełnionych zerami, ponieważ sztuczne powtarzanie może zawyżać oszczędności.

Najbezpieczniejsza interpretacja jest warunkowa: deduplikacja jest najsilniejsza dla celowo powtarzalnych zbiorów danych i najsłabsza jako funkcja ogólna w mieszanym domowym magazynie. Może zamienić RAM w użyteczną pojemność, ale tylko wtedy, gdy indeks pozostaje obsługiwalny, a przechowywane dane zawierają wystarczająco dużo powtarzalnych bloków, by zrekompensować koszt wyszukiwania.

Najczęściej zadawane pytania

Czy dodanie więcej pamięci RAM zwiększa współczynnik deduplikacji?

Nie bezpośrednio. Współczynnik zależy od powtarzającej się zawartości, zakresu deduplikacji i granic fragmentów. Więcej pamięci RAM może utrzymać większą część indeksu odcisków palców w pamięci podręcznej, poprawiając szybkość wyszukiwania, ale nie może tworzyć duplikatów bloków, których nie ma.

Czy deduplikacja to to samo co kompresja?

Nie. Deduplikacja zastępuje powtarzające się fragmenty odniesieniami do jednej przechowywanej kopii. Kompresja koduje wzorce wewnątrz fragmentu, używając mniejszej liczby bajtów. Mogą się uzupełniać, ale różnią się kolejnością przetwarzania, metadanymi, kosztem CPU i najlepszymi zastosowaniami.

Czy domowa biblioteka multimediów zwykle korzysta z deduplikacji?

Zazwyczaj mniej niż zestawy kopii zapasowych lub sklonowane obrazy systemu. Większość zakodowanych zdjęć, muzyki i plików wideo jest unikalna na poziomie bloków, więc indeks może rosnąć, podczas gdy oszczędności pojemności pozostają niewielkie. Dokładne duplikaty plików nadal mogą przynosić korzyści, ale ważniejsze są zmierzone wyniki niż etykieta kategorii.

Centrum Technologii i Sztucznej Inteligencji

Więcej do przeczytania

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.