Windows Server 2012 R2 Deduped 356 GB do 1,32 GB

13

Eksperymentuję z deduplikacją na przestrzeni dyskowej Server 2012 R2. Pozwoliłem, by uruchomiła pierwszą optymalizację dedupe w nocy i byłam zadowolona, ​​widząc, że zmniejszyła się o 340 GB.

wprowadź opis zdjęcia tutaj

Wiedziałem jednak, że to zbyt piękne, aby mogło być prawdziwe. Na tym dysku 100% deduplikacji pochodziło z kopii zapasowych programu SQL Server:

wprowadź opis zdjęcia tutaj

Wydaje się to nierealne, biorąc pod uwagę, że w folderze znajdują się kopie zapasowe baz danych o rozmiarze 20x większym. Jako przykład:

wprowadź opis zdjęcia tutaj

Uważa, że ​​plik kopii zapasowej o pojemności 13,3 GB został deduplikowany do 0 bajtów. I oczywiście ten plik nie działa, gdy przywróciłem go testowo.

Aby dodać obrażenia do obrażeń, na tym dysku znajduje się inny folder, który zawiera prawie TB danych, który powinien był dużo poświęcić, ale go nie miał.

Czy deduplikacja Server 2012 R2 działa?

Mark Henderson
źródło
5
Będę musiał to zapamiętać. „Oczywiście nie usunąłem twoich danych, ponieważ mnie wkurzyłeś. Oddałem je do 0 bajtów, to wszystko.”
HopelessN00b
Czy to możliwe, że robi deduplikację, zakładając, że dane będą względnie takie same z jednej nocy na drugą. To znaczy, jeśli masz pierwszą i ostatnią kopię zapasową, jedyną rzeczą każdej nocy będzie migawka różnic, na przykład VSS. Teoretycznie może być możliwe deduplikowanie go do 0, biorąc pod uwagę, że pierwsza i ostatnia kopia może wystarczyć do ponownego wygenerowania pliku w środku. Ale ponieważ przywrócenie nie powiodło się, poczekam, aby zobaczyć, co wymyśliłeś jako wyjaśnienie. Ale twój test nie jest obiecujący ...
MikeAWood
@MikeAWood usunęło również całkowicie różne kopie zapasowe bazy danych do 0 bajtów, co z pewnością jest błędne. Jedną z rzeczy, dla których chciałem dedupe, jest, jak zauważyłeś, 90% kopii zapasowych z nocy na noc jest identycznych.
Mark Henderson
@ MarkHenderson, jeśli skonfigurujesz nowy dysk i skopiujesz na niego wszystko, czy to zadziała? Tylko leniwe zgadywanie. Być może jest podobny do systemu plików DFS, w którym proces sprawdzania początkowych danych musi zostać wykonany lub nie będzie działać poprawnie. Twoje wyniki są dziwne, bez wątpienia. Mam nadzieję, że to
rozgryzłeś.
@MikeAWood - nie próbowałem tego. Odtąd nukowałem ten dysk i odtworzyłem go z różnymi ustawieniami deduplikacji, więc zobaczę, co stanie się dziś wieczorem, gdy uruchomi się inny zrzut
Mark Henderson

Odpowiedzi:

5

Deduplikacja działa.

Dzięki deduplikacji pole Rozmiar na dysku staje się bez znaczenia. Pliki nie są już zwykłymi „plikami”, ale punktami ponownej analizy i nie zawierają rzeczywistych danych, ale metadane dla silnika deduplikacji w celu odtworzenia pliku. Rozumiem, że nie można uzyskać oszczędności na plik, ponieważ magazyn porcji deduplikacji jest na wolumin, więc uzyskuje się tylko oszczędności na wolumin. http://msdn.microsoft.com/en-us/library/hh769303(v=vs.85).aspx

Być może twoje zadanie deduplikacji jeszcze się nie zakończyło, jeśli niektóre inne dane nie zostały jeszcze deduplikowane. Nie jest superszybki, domyślnie jest ograniczony czasowo i może być ograniczony zasobami w zależności od sprzętu. Sprawdź harmonogram deduplikacji w Menedżerze serwera.

Od około roku wdrażam deduplikację na kilku systemach (Windows 2012 R2) w różnych scenariuszach (SCCM DP, różne systemy wdrażania, ogólne serwery plików, serwery plików folderów domowych użytkowników itp.). Tylko upewnij się, że jesteś w pełni załatany, pamiętam kilka poprawek do funkcji deduplikacji (zarówno Aktualizacje zbiorcze, jak i poprawki) od czasu RTM.

Istnieją jednak pewne problemy, że niektóre systemy nie mogą odczytać danych bezpośrednio ze zoptymalizowanych plików w systemie lokalnym (IIS, SCCM w niektórych scenariuszach). Jak zasugerował yagmoth555, powinieneś spróbować Expand-DedupFile, aby go zoptymalizować lub po prostu zrobić kopię pliku (plik docelowy nie zostanie zoptymalizowany do następnego uruchomienia optymalizacji) i spróbować ponownie. http://blogs.technet.com/b/configmgrteam/archive/2014/02/18/configuration-manager-distribution-points-and-windows-server-2012-data-deduplication.aspx https: //kickthatcomputer.wordpress .com / 2013/12/22 / no-input-file-specified-windows-server-2012-dedupe-on-iis-with-php /

Jeśli twoja kopia zapasowa SQL jest faktycznie uszkodzona, uważam, że wynika to z innego problemu i nie jest związana z technologią deduplikacji.

Don Zoomik
źródło
Dziękuję za odpowiedź. Twoja odpowiedź odzwierciedla moje własne ustalenia. Miałem trochę nieporozumień na temat dedupe, a moja metodologia testowania była wadliwa.
Mark Henderson
@Zaznaczyć coś na temat nieporozumień i metodologii testowania, którym możesz się podzielić ...? Być może w poście na blogu? Byłoby interesujące dowiedzieć się, ponieważ nie mogę wymyślić, gdzie ty (a zatem i ja) mogłeś się pomylić. EDYCJA: Widziałem teraz twoją odpowiedź ... ale post na blogu byłby dobry, jeśli ją masz.
Ashley,
1
@AshleySteel Naprawdę już nie bloguję. Dawno, dawno temu. Wszystko sprowadzało się do tego, że nie rozumiem, jak działa deduplikacja Windows Server ...
Mark Henderson
2

Wygląda na to, że podskoczyłem z pistoletu, mówiąc, że tego rodzaju deduplikacja nie jest możliwa. Najwyraźniej jest to całkowicie możliwe, ponieważ oprócz tych nieskompresowanych kopii zapasowych SQL Server, mam również kopie zapasowe VMWare na poziomie migawek maszyn wirtualnych hosta.

Jak sugerował yagmoth555, uruchomiłem Expand-DedupeFileniektóre z tych plików 0-bajtowych i na końcu otrzymałem plik całkowicie użyteczny.

Następnie spojrzałem na moją metodologię testowania na to, jak ustaliłem, że pliki nie są dobre, i znalazłem wadę w moich testach (uprawnienia!).

Otworzyłem także 0-bajtowy deduplikowany plik kopii zapasowej w edytorze szesnastkowym i wszystko wyglądało OK.

Dostosowałem więc metodologię testowania i wszystko wydaje się działać. Gdy go zostawiłem, deduplikacje faktycznie się poprawiły, a dzięki dedupe zaoszczędziłem teraz ponad 1,5 TB miejsca.

Zamierzam przetestować to dokładniej, zanim zainspiruję się do produkcji, ale teraz wygląda obiecująco.

Mark Henderson
źródło
0

Tak, ale widziałem tylko przypadek dedupcji db klastra hyperv. 4 TB do 400 g, a maszyna wirtualna była uruchomiona. System operacyjny został w pełni załatany.

Czy dla pliku kopii zapasowej sql jest zrzut, który można w nim odczytać? Sprawdziłbym treść. W tej części nie mogę odpowiedzieć, jak to deduplikować plik ascii.

yagmoth555
źródło
Są to pliki binarne, ale jak już wspomniałem, cokolwiek w nich jest, jest całkowicie zepsute. Właściwie nie sprawdziłem zawartości w edytorze szesnastkowym, a odtąd nukowałem ten dysk i odtworzyłem go z różnymi parametrami deduplikacji, aby zobaczyć, co stanie się dziś wieczorem.
Mark Henderson
1
@MarkHenderson Może to być uszkodzenie fragmentu w metadanych deduplikacji, ponieważ rozmiar wynosił 0. Cytuje; „Deduplikacja zwiększa wpływ uszkodzenia pojedynczego fragmentu, ponieważ do popularnego fragmentu może odnosić się duża liczba plików. Wyobraź sobie, że fragment, do którego odnosi się 1000 plików, został utracony z powodu błędu sektora; natychmiast straciłbyś 1000 plików. „ Plik cmd Expand-DedupFile wykluczy, jeśli jest to zły plik .bak lub uszkodzenie
deduplikacji