Odzyskiwanie przestrzeni w SharePoincie
Audyt milionów elementów, odzyskanie przestrzeni skryptami PowerShell z próbnym przebiegiem na start, a potem wniosek, że porządki to nie strategia.
Problem
Tenant zbliżał się do limitu przestrzeni dyskowej w trakcie przenoszenia firmy z mapowanych dysków sieciowych, więc zużycie rosło z założenia. Otwarte pytanie brzmiało: ile przestrzeni dokupić. Rzetelna odpowiedź wymagała najpierw pomiaru.
Co zrobiłem
Napisałem siedemnaście skryptów PowerShell, ponumerowanych według etapów i oznaczonych według przeznaczenia: diagnostyka tylko do odczytu, zmiany ustawień, które niczego nie usuwają, oraz nieodwracalne usuwanie. Skrypty tylko do odczytu sprawdziłem pod kątem braku jakichkolwiek wywołań usuwających, ustawiających lub aktualizujących, więc „ten tylko czyta” to sprawdzona właściwość, a nie komentarz. Każdy skrypt niszczący domyślnie działa jako przebieg próbny, a proces nadzorujący wznawia przycinanie po przekroczeniu limitu użycia; dzięki temu zadanie zbyt duże na jedną dławioną sesję dało się dokończyć.
Audyt, na zaledwie 10 witrynach testowych, pokazał kształt problemu: z 1 867 439 elementów 7633 pliki z więcej niż dziesięcioma wersjami (0,41%) zawierały 1279 GB historii, czyli 96% wszystkiego, co odzyskano. Liczba elementów niczego nie przewidywała; wszystko przewidywała głębokość historii wersji w dużych plikach. Największa biblioteka wyglądała na przerośniętą wersjami, ale nie była: 83% jej plików miało dokładnie jedną wersję, więc ją zostawiłem i skupiłem się tam, gdzie wskazywał pomiar.
Zachowanie dziesięciu najnowszych wersji i nietykanie bieżącej usunęło 108 822 wersje. Razem ze starymi elementami z kosza odzyskano 1,31 TB, z ośmioma błędami na 7633 plikach. Wszystkie osiem dotyczyło tych samych zablokowanych plików, które przebieg próbny oznaczył cztery dni wcześniej.
Decyzja i jej koszt
Raport końcowy wymienia miejsca, w których jego własne liczby się nie zgadzają. Jedna partia pięćdziesięciu wierszy audytu przepadła przez blokadę pliku, choć same usunięcia się powiodły, więc raport mówi, którą liczbę przytaczać w jakim celu. Bezpośredni pomiar przed i po pokazał o 88 GB więcej niż audyt, bo platforma sama zwolniła część miejsca; audyt jest więc dolnym oszacowaniem i to jego wynik podaję.
Po porządkach napisałem rekomendację na dłuższą metę: przycinanie historii to jednorazowy zysk okupiony powtarzalnym kosztem, a limity wersji po stronie serwera działają odwrotnie.
Powiązane
Odpowiedzialność za platformę Microsoft 365
Jeden z trzech administratorów tenanta SharePoint i Microsoft 365 dla ponad 7000 pracowników oraz osoba, która przenosi firmę z mapowanych dysków sieciowych.
7000+ pracowników w tenancie
Jeden z trzech administratorów tenanta
SharePoint Online · PowerShell · PnP · Microsoft 365