Jakie są różnice między kronikowaniem HFS + a kronikowaniem HFS +?

41

Zaraz sformatuję zewnętrzny dysk twardy (HDD).

Jakie są kluczowe różnice między kronikowaniem HFS + a HFS + bez kronikowania? Oprócz tego, że jeden ma kronikowanie, a drugi nie, jak wpływa to na wydajność dysku (z liczbami)?

Mam przeczucie, że w „normalnym” użytkowaniu dziennikowanie byłoby dobrym rozwiązaniem, ale czy są jakieś sytuacje, w których należy wziąć pod uwagę brak rejestrowania HFS +? Kompatybilność z Linuksem jest jedna, ponieważ wydaje się, że moduł hfsplus jądra obsługuje odczyt i zapis na niefunkcjonowanym HFS +, ale tylko na rejestrowanym HFS +.

Coś jeszcze wartego wspomnienia?

Jari Keinänen
źródło

Odpowiedzi:

35

Nie mam liczb, aby wykonać kopię zapasową wyciągu, ale używanie HFS + bez kronikowania jest dobrym pomysłem w niektórych tomach, które wymagają absolutnej szybkości, nie martwiąc się (zbytnio) o możliwą „utratę danych” lub „uszkodzenie danych” w przypadku awaria zasilania lub podobne.

Kiedy HFS + Non-Journaled jest pomysłem BAD ?

  • Zewnętrzne dyski (USB, FW, ESata), które są często podłączane i ponownie podłączane: To zwykle zły pomysł, ponieważ dyski te są często bardzo często odłączane i / lub ich źródła zasilania są odłączane.

  • Partycje, na których integralność danych jest ważna, a ochrona przed nieoczekiwaną utratą zasilania jest koniecznością. (Dokumenty, muzyka, filmy, kopie zapasowe itp.).

Kiedy korzystanie z HFS + Non-Journaled jest DOBRYM pomysłem ?

  • Scratch, Temp, trywialna pamięć masowa oraz podobne dyski i partycje, w których prędkość to> integralność danych w przypadku awarii zasilania. Chcesz, aby objętość zadrapania Final Cut nie była zapisywana w dzienniku (i tak masz UPS, prawda?). Chcesz, aby Twoja temp Photoshopa nie była zapisywana w dzienniku. Dyski do kopiowania rzeczy (na przykład pendrive, jeśli dbasz o prawidłowe wysuwanie).

  • Każdy inny dysk, który wymaga przenośności i kompatybilności, tak jak prawidłowo wskazałeś.

Pamiętaj, że utrzymanie dziennika dodaje niewielki narzut, ale korzyści w przypadku nieprawidłowego demontażu woluminu są ważne, nie tylko w celu uniknięcia pełnego skanowania dysku podczas uruchamiania lub ponownego instalowania, ale także pod względem upewnienia się, że dane nie są zepsuty w pierwszej kolejności.

Podłączenie niepopartego na dysku dysku, który został nieprawidłowo odmontowany, spowoduje skanowanie fsck , podczas gdy dysk kronikowany będzie mógł zostać uruchomiony w krótszym czasie (skanowanie dziennika i przeprowadzanie niezaangażowanych transakcji).

Jeśli chodzi o szybkość i testy, nie mam zbyt wielu informacji, aby poprzeć powyższe twierdzenie, jednak, o ile wiem, różnica prędkości jest nie tylko bardzo niewielka, a nawet trudna do zauważenia, ale w niektórych przypadkach Journaled system plików jest szybszy niż non -zalecane.

Okazuje się, że pomimo narzutu dziennika, niektóre operacje można wykonywać asynchronicznie na dysku Journaled, podczas gdy wersja bez dziennika musi działać synchronicznie.

Dla porównania, przeszukałem trochę Google, próbując znaleźć stare porównanie (liczby są prawdopodobnie prawidłowe, ponieważ HFS + tak naprawdę niewiele się zmienił od czasu ich pierwszej iteracji w OSX, oprócz dodania rekordów danych atrybutów wbudowanych oraz bezpieczeństwa plików listy kontroli dostępu i być może coś innego.

Oto strona z wykresami:

Porównanie między HFS + z kronikowaniem a HFS + bez kronikowania

TL; DR:

Sekwencja kopiowania / duplikowania / kopiowania pliku była prawie równie szybka zarówno dla HFS z kronikowaniem / bez kronikowania. Ta sama sekwencja z folderem znów była nieco szybsza z kronikowanym HFS

(moje podkreślenie)

Wniosek

Jestem nieco zaskoczony, widząc powyższe wyniki, ponieważ byłem w pewnym stopniu przekonany, że korzystanie z opcji Bez dzienników było naprawdę szybsze w przypadku niektórych operacji, ale najwyraźniej małe przypadki, w których może to coś zmienić, są przeważone przez „bezpieczeństwo” Journaling.

Martin Marconcini
źródło
@Griffo faktycznie daje +1 w pytaniu, które zmusza mnie do zbadania sprawy i dojścia do powyższego wniosku ;-) Dzięki.
Martin Marconcini,
@ MartínMarconcini w sekcji odpowiedzi „mały narzut” brakuje narzutu pod względem zużycia miejsca na dysku. Na przykład, ile więcej miejsca na dysku będzie dostępne do przechowywania plików, gdy kronikowanie nie jest włączone?
Pro Backup
@ProBackup Chociaż nie mam „liczb”, naprawdę wierzę, że rozmiar czasopisma będzie w dzisiejszych dyskach znikomy.
Martin Marconcini,
@ MartínMarconcini Zastanawiam się, jaki jest narzut pod względem zajętego miejsca na dysku, ponieważ: (1) Większość z tych dodatkowych funkcji jest dodawana proporcjonalnie. (2) Wszystkie te dodatkowe sumują się: 209,7 MB na partycję EFI, kolejne 1,4 MB na możliwość utworzenia 128 partycji, gdzie potrzebna jest tylko 1. (3) Fakt diskutil moveJournal externalutworzy 512 MB partycji Apple_Journal. (4) W przypadku 2,7 TB (stary styl 3 TB) używa się 736 MB ( df -h) do przechowywania tylko 1 pliku (zgodnie z sudo du /Volumes/Name).
Pro Backup
4

Kronikowanie dodaje opóźnienie i złożoność każdej operacji, która zostanie kronikowana. Zapisywanie w dzienniku wymusza natychmiastowe zapisywanie danych na dysku, co może spowolnić inne zaległe transakcje na dysku.

Miłym podejściem do tego, co robi kronikowanie, są wycofane uwagi techniczne TN1150: Format woluminu HFS Plus .

Obszar dziennika w systemie plików jest mocno zapisany i zmusza system operacyjny do regularnej synchronizacji danych. Może to zakłócać duże operacje odczytu i zapisu, które odbywają się w tym samym czasie, co modyfikacja systemu plików, która wymaga wpisów do dziennika.

Zaletą systemu kronikowania jest to, że w czasie montowania system może z łatwością dokończyć tworzenie pozycji pliku lub modyfikację katalogu, które były w trakcie próby. Sam system plików jest naprawiany i przechodzi w spójny stan z niezwykłą szybkością w porównaniu do pełnego sprawdzenia katalogu systemu plików.

Dla początkujących użytkowników - poproszenie ich o naprawę dysku nie jest zabawne i wywołuje niepewność i zmusza ich do nieco lepszego poznania sposobu działania. Tak - szczotkuje pod dywanem fakt, że mogli zgubić jedno zdjęcie, które właśnie pobrali lub przenieśli. W praktyce zdrowy rozsądek zapewnia, że ​​nawet nowi użytkownicy sprawdzą plik dwukrotnie przed usunięciem go z aparatu, gdy „cholerny komputer” uruchomi się ponownie w trakcie kopiowania swoich zdjęć do iPhoto. (Bardziej prawdopodobne jest, że dzwonią do swojego systemu wsparcia w celu uzyskania pomocy w tym momencie, jeśli zauważą nawet, że następny rozruch był wolniejszy lub zdarza się to więcej niż dwa razy w tygodniu)

Dla zaawansowanych użytkowników, którzy chcą najszybszej wydajności, korzyści z kronikowania zaczynają przypominać kary za cenę niższej wydajności. Kary te mogą być znaczne, jeśli system jest już blisko pojemności lub potrzebuje maksymalnej wydajności w przypadku dużych, trwałych transferów danych typowych dla pro wideo lub niektórych przepływów pracy w bazie danych.

Takie rzeczy są dobrym powodem do wyłączenia rejestrowania:

  • pliki do przechowywania bazy danych
  • nadmiarowe maszyny z procedurami naprawy danych po awarii
  • Pamięć RAID, która zajmuje się kronikowaniem i nie tylko
  • potrzebuje tylko dodatkowej prędkości bez względu na koszty
bmike
źródło
Wydawało się, że TN1150 zniknęło z domeny apple.com, a następnie wydanie z 2004 r. Pojawiło się jako dokument wycofany ze strony developer.apple.com/legacy/mac/library/#technotes/tn/…, a następnie przeniósł się na developer.apple.com/legacy/ biblioteka / technotes / tn / tn1150.html . Istnieje nostalgicznie stylizowana kopia wydania 2004 na dubeiko.com/development/FileSystems/HFSPLUS/tn1150.html
Graham Perrin
RAID nie usuwa błędów, które zapobiega kronikowaniu. Kronikowanie ma na celu upewnienie się, że gdy system operacyjny / system plików jest w trakcie aktualizacji katalogu, który jest skomplikowaną strukturą drzewa w systemie plików HFS, awaria systemu lub usunięcie dysku nie zniszczy całego drzewa katalogów przez potencjalną utratę ważnych węzłów ( oddziały), których nawet fsck nie może odzyskać. RAID nie zapobiega temu - to tylko zapobiega utracie danych z powodu awarii dysku, który jest zupełnie innym rodzajem utraty danych.
Thomas Tempelmann,
1

Jeśli masz takie skłonności, możesz rzucić okiem na narzędzia programistyczne do porównywania wydajności dysków różnych systemów plików, tutaj znajduje się przewodnik:  http://developer.apple.com/library/mac/DOCUMENTATION/Performance/Conceptual/FileSystem/Articles /MacOSXAndFiles.html

Nie mogę znaleźć żadnego porównania z twardymi liczbami, ale prawdopodobnie jest oczywiste, że system plików kronikowania oferuje odporność na awarie, ale system plików bez kronikowania oferuje lepszą wydajność

Dodałem także tag systemu plików

conorgriffin
źródło
+1 za link do dewelopera, zapominam, jak przydatne jest to źródło. I niewidoczny +1 dla retag ;-)
Jari Keinänen