Dlaczego metadane Immich rosną podczas tworzenia kopii zapasowej rodzinnych zdjęć?

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.

Metadane Immich rosną podczas tworzenia rodzinnej kopii zapasowej zdjęć, ponieważ każdy oryginał tworzy rekordy aplikacji, a także może powodować utworzenie miniatur, wektorów wyszukiwania, danych o twarzach i innych danych pochodnych.

Ten przyrost nie stanowi jednej stałej wartości procentowej względem oryginalnej biblioteki. Gospodarstwo domowe z wieloma małymi obrazami, długimi filmami, licznymi twarzami lub intensywnym przetwarzaniem wyszukiwania może mieć inny profil narzutu niż inna rodzina przechowująca taką samą liczbę terabajtów danych źródłowych. Zanim zdecydujesz, czy wzrost jest oczekiwany, oddziel stan bazy danych od wygenerowanych plików.

Każdy zasób dodaje trwałe rekordy aplikacji

Baza danych potrzebuje rekordów łączących zasób z właścicielem, ścieżką, znacznikami czasu, albumami, uprawnieniami i innymi właściwościami widocznymi w aplikacji. Wraz ze wzrostem liczby zasobów i relacji rośnie również ten trwały stan, nawet gdy oryginalne pliki są przechowywane gdzie indziej.

Przegląd wymagań dotyczących pamięci masowej, który oddziela narzut bazy danych od miniatur i oryginałów, jest przydatny, ponieważ te elementy skalują się w różny sposób. Podane przykładowe wartości należy traktować jako obserwacje dotyczące konkretnego wdrożenia, a nie gwarantowany współczynnik dla biblioteki innej rodziny.

Liczba zasobów jest więc lepszą zmienną początkową niż liczba gigabajtów danych źródłowych w przypadku niektórych pytań dotyczących metadanych. Dziesięć tysięcy dużych filmów i dziesięć tysięcy małych zdjęć może zajmować zupełnie inną ilość miejsca, ale oba zbiory nadal wymagają rekordów na poziomie zasobów i relacji w bazie danych aplikacji.

Wygenerowane pliki do przeglądania tworzą osobną krzywą zajętości

Przeglądanie osi czasu korzysta z mniejszych reprezentacji, które można wyświetlać szybciej niż otwieranie każdego oryginału. Te wygenerowane pliki nie są metadanymi bazy danych w ścisłym znaczeniu, ale często są postrzegane jako „narzut Immich”, ponieważ rosną wraz z biblioteką i są zarządzane przez aplikację.

Układ pamięci masowej obejmujący cztery usługi w wdrożeniu w domowym laboratorium rozróżnia zdjęcia, wygenerowane multimedia i lokalizację bazy danych. Ten podział ma duże znaczenie operacyjne, ponieważ często zmieniające się pliki pochodne i krytyczny stan bazy danych pełnią różne role w zakresie kopii zapasowych i wydajności.

Nie szacuj tej krzywej wyłącznie na podstawie rozmiaru oryginalnych plików. Liczba miniatur zależy od liczby zasobów i włączonych rozmiarów, natomiast wynik kodowania filmów zależy od zgodności filmów i ustawień transkodowania. Po zakończeniu przetwarzania tej samej partii mierz każdy wygenerowany katalog osobno.

Funkcje wyszukiwania i rozpoznawania twarzy dodają stan indeksu

Wyszukiwanie semantyczne i funkcje związane z twarzami tworzą reprezentacje liczbowe oraz relacje, dzięki którym można znajdować treści wizualne bez przepisywania oryginalnego obrazu. Większa liczba przetworzonych zasobów, wykrytych twarzy i włączonych funkcji analizy powoduje więc z czasem przyrost stanu bazy danych oraz danych związanych z modelami.

Wyjaśnienie działania osadzeń semantycznych pokazuje, dlaczego indeks wyszukiwania wizualnego może rosnąć, nawet gdy nazwy plików i foldery pozostają niezmienione. Model przekształca każdy kwalifikujący się obraz w wielokrotnie używaną reprezentację, która może być później porównywana z zapytaniami tekstowymi.

Stanu tego nie należy mylić z drugą kopią w pełnej rozdzielczości. Jeśli rozmiar bazy danych związany z wyszukiwaniem nadal szybko rośnie po ustabilizowaniu liczby zasobów, ustawień funkcji i zestawu modeli, zbadaj konserwację, wielokrotne przetwarzanie lub inny mechanizm bazy danych, zamiast zakładać, że za wzrost odpowiada normalne indeksowanie.

Organizacja rodzinna dodaje relacje, a nie tylko pliki

Albumy, nazwy osób, relacje udostępniania, ulubione, edycje i inne działania użytkowników mogą zwiększać metadane aplikacji niezależnie od dodawania nowych oryginałów. Dwie rodziny mające identyczne multimedia mogą więc zajmować różną ilość miejsca w bazie danych, ponieważ jedna z nich intensywniej korzysta z funkcji organizowania i udostępniania.

Przegląd organizacji rodzinnych zdjęć w ZimaSpace dotyczący warstw organizacji zdjęć podkreśla różnicę między scentralizowanymi oryginałami a wyszukiwalnymi osobami, miejscami, wydarzeniami i albumami nałożonymi na te dane. Relacje te są częścią doświadczenia użytkownika i należy uwzględnić je w planowaniu odtwarzania danych.

Ten mechanizm nie wyjaśnia dużego, niewytłumaczonego wzrostu w dziennikach, zapisywalnych warstwach kontenerów, plikach tymczasowych ani zduplikowanych zasobach źródłowych. Kategorie te mają inne przyczyny i należy mierzyć je poza modelem bazy danych i danych pochodnych, zamiast włączać je do jednej liczby określanej jako „metadane”.

Mierz przyrost według roli pamięci masowej

Przed reprezentatywnym importem ustal wartości bazowe: rozmiar i liczbę oryginalnych multimediów, rozmiar bazy danych, miejsce zajmowane przez miniatury lub podglądy, miejsce zajmowane przez zakodowane filmy, pamięć podręczną modeli, kopie zapasowe oraz pliki tymczasowe i dzienniki. Powtórz pomiar po zakończeniu włączonych zadań działających w tle dla tej samej partii, a następnie ponownie po normalnym użytkowaniu przez domowników.

Rodzinny proces tworzenia kopii zapasowych w ZimaSpace potwierdza, dlaczego oryginały i kluczowy stan aplikacji należy chronić razem, podczas gdy dane możliwe do ponownego wygenerowania można traktować inaczej. Ewidencjonowanie pamięci masowej powinno uwzględniać zarówno wartość przy odtwarzaniu, jak i liczbę bajtów.

Zaakceptuj wzrost, jeśli można go powiązać z nowymi zasobami, danymi pochodnymi, rekordami bazy danych i włączonymi funkcjami. Przeprowadź dalsze dochodzenie, gdy jedna z ról rośnie bez odpowiadającej jej aktywności zasobów lub funkcji albo gdy zmierzona suma wyraźnie odbiega od sumy znanych ról pamięci masowej.

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.