Dlaczego nie można defragmentować dysków półprzewodnikowych? [duplikować]

39

To pytanie ma już odpowiedź tutaj:

Ciągle słyszę, że to ogromne nie-nie. Dlaczego to? Używam głównie Ubuntu, więc to mnie nie dotyczy, ale po prostu się zastanawiałem.

Jerzy IV
źródło
3
Nie mogę powiedzieć, że jestem wykształcony w tej dziedzinie, ale wierzę, że dzieje się tak, ponieważ dyski SSD są lekko uszkodzone za każdym razem, gdy wykonują zapis, a defragmentacja powoduje szybsze zużycie dysku SSD. Ponadto, ponieważ dyski SSD nie zawierają ruchomych części, defragmentacja dysków SSD zapewnia mniejszy wzrost wydajności niż defragmentacja dysków HDD.
Blixt,
1
Uwaga dla czytelników lądujących na tej stronie: myślenie na ten temat zmieniło się w ciągu 7 1/2 roku od momentu zadawania tego pytania. Pamiętaj, aby zobaczyć ostatnie odpowiedzi tutaj i odpowiedzi na bieżące pytanie, które są oznaczone jako duplikat.
fixer1234

Odpowiedzi:

63

Dyski półprzewodnikowe są oparte na pamięci flash, która starzeje się zupełnie inaczej niż standardowe dyski twarde z obrotowym talerzem . Każdy sektor ma ograniczoną liczbę cykli zapisu , więc dyski zawierają funkcje wyrównywania zużycia, które pozwalają na dłuższą żywotność dysku poprzez jego zasadnicze fragmentowanie.

Czasy odczytu nie ulegają znacznej poprawie dzięki defragmentacji, tak jak ma to miejsce w przypadku standardowych dysków, więc nie ma realnego zysku z defragmentacji, ale dzięki temu zwiększa się liczba zapisów na dysku, tym samym skracając żywotność dysku.

dreszcze42
źródło
45

Defragmentacja umieszcza sektory blisko siebie, co jest pomocne w przypadku obracającego się dysku. Jest to jednak bezużyteczne w przypadku dysków SSD, które mają stały czas dostępu dla dowolnego sektora. Defragmentacja powoduje tylko dodatkowe zapisy na dysku (dyski SSD mają ograniczoną liczbę zapisów ze względu na ich konstrukcję)

Jeff Moser
źródło
11

Należy pamiętać, że nie powinno być żadnego technicznego powodu, aby nie „móc defragmentować dysku SSD” w tym sensie, że można uruchomić program do defragmentacji i uruchomić go na dysku.

Ale to nie ma wpływu na dyski półprzewodnikowe, ponieważ przenoszenie klastrów razem nie przyspieszy napędu.

Z drugiej strony, będziesz wykonywać wiele niepotrzebnych zapisów na dysku, a to skróci, choć nieznacznie, żywotność dysku.

Ponadto wiele dysków półprzewodnikowych dokonuje optymalizacji w celu zmniejszenia tego problemu, ograniczając powtarzające się zapisy w tym samym obszarze, i jest to przezroczyste dla systemu zewnętrznego, w którym to przypadku klastry mogą w ogóle nie zostać przeniesione, ale zamiast tego rozłożone na dysku . Technika ta zazwyczaj polega na „wyrównaniu zużycia”.

Jeśli program do defragmentacji odmówi defragmentacji dysku SSD (lub nawet wymieni go jako dysk, który możesz wybrać), postawiłbym się, że jest to w zasadzie odmowa oprogramowania, aby uniknąć problemów opisanych powyżej.

Zauważ, że nie wiem wystarczająco dużo o podstawowych protokołach używanych do defragmentacji dysku, więc bardzo dobrze może istnieć twardy blok z dysku SSD, który akceptuje polecenia defragmentacji, jeśli istnieją takie rzeczy. Przyczyny tego są jednak opisane tutaj.

zły człowiek
źródło
1
SSD = dysk SSD. Nie ma dysku. Nadal używasz „dysku” zamiast „dysku”.
trociny
7

Defragging obniży oczekiwaną żywotność dysku, wykonując niepotrzebne przejścia na dysku o ograniczonej żywotności.

TheTXI
źródło
2

To zależy od tego, co znajduje się na dysku. Defragmentacja dysku SSD nie spowoduje wzrostu wydajności, ale będzie to miało wpływ na odzyskiwanie danych.

Z jednej strony pamięć flash ma ograniczoną liczbę cykli zapisu , więc robienie dużej ilości zapisu w końcu ją zużyje. Dyski flash, karty pamięci i dyski SSD wykorzystują sztuczki, takie jak wyrównywanie zużycia i TRIM, aby przedłużyć żywotność nośnika, ale defragmentacja zwykle powoduje dużą liczbę zapisów, co powoduje, że zużywa się tym szybciej.

Z drugiej strony fragmentowane pliki są nieskończenie trudniejsze do odzyskania po przypadkowym usunięciu, uderzeniu przez wirusa itp., Więc utrzymanie plików w ciągłym stanie (np. Przez defragmentację) znacznie zwiększy szanse na odzyskanie.

Dlatego, jak powiedziałem na początku, zależy to od tego, co jest przechowywane na dysku, jak ważne są pliki, jak prawdopodobne jest, że będziesz musiał przeprowadzić odzyskiwanie danych i jak często pliki są zmieniane (częste usuwanie i kopie będą prowadzą do fragmentacji szybciej, a także zjadają więcej cykli zapisu).

Synetech
źródło
2

Właściwie możesz. Defragmentacja jest rzeczą na poziomie systemu plików, nie ma znaczenia, co znajduje się na niższym poziomie bloku.

Ale w przypadku dysku SSD nie ma głowicy dysku, której ruchy należy zminimalizować. Tak więc nie będzie to szybsze, ani trochę.

Niektóre systemy operacyjne i narzędzia zabraniają tego tylko, ponieważ decyzje ich firm deweloperskich lubią mieszać znaczenie „nie potrzebujesz” i „nie możesz”. Ale to są różne rzeczy.

Prawdopodobnie istnieje wiele hacków, które mogłyby uniknąć tego zakazu (regedit lub eksportowanie dysku jako iscsi i ponowny import na ten sam komputer itp.). W takim przypadku znajdziesz bardzo rozdrobniony dysk, którego defragmentacja będzie bardzo długa. Jest tak, ponieważ system operacyjny nie dba o fragmentację swojej skrzynki. I, jak wspominają również inne odpowiedzi, defragmentacja nie przyspieszy twojego systemu, ale skróci jego żywotność.

Peter mówi, że przywraca Monikę
źródło
Prawdziwe. Możesz defragmentować system plików na dysku SSD. A jeśli chodzi o system operacyjny, masz teraz ładne, czyste dane sekwencyjne. (Wszystko to jest bardzo nieprawdziwe na rzeczywistym dysku, który wykonuje swoje wewnętrzne mapowanie).
Hennes
2

Cały czas nie jest źle. Ręczne uruchamianie pełnej defragmentacji jest czymś, czego nie powinieneś robić, ale jeśli masz włączone migawki woluminów, Windows 8/10 będzie defragmentował dysk SSD raz w miesiącu :

Jest to zgodne z projektem i konieczne ze względu na powolne kopiowanie volsnap przy wydajności zapisu na pofragmentowanych woluminach SSD. Jest to również trochę nieporozumienie, że fragmentacja nie stanowi problemu na dyskach SSD. Jeśli dysk SSD zostanie zbyt pofragmentowany, możesz osiągnąć maksymalną fragmentację pliku (gdy metadane nie mogą reprezentować więcej fragmentów pliku), co spowoduje błędy podczas próby zapisu / rozszerzenia pliku. Co więcej, więcej fragmentów plików oznacza więcej metadanych do przetworzenia podczas odczytu / zapisu pliku, co może prowadzić do obniżenia wydajności.

Wniosek

Nie, Windows nie głupio i na ślepo uruchamia defragmentację na dysku SSD każdej nocy i nie, defragmentacja systemu Windows nie skraca niepotrzebnie żywotności dysku SSD. Nowoczesne dyski SSD nie działają w taki sam sposób, w jaki jesteśmy przyzwyczajeni do tradycyjnych dysków twardych.

Tak, system plików twojego dysku SSD czasami wymaga pewnego rodzaju defragmentacji, która jest obsługiwana przez system Windows, domyślnie co miesiąc, w stosownych przypadkach. Celem jest maksymalizacja wydajności i długiej żywotności. Jeśli całkowicie wyłączysz defragmentację, ryzykujesz, że metadane twojego systemu plików mogą osiągnąć maksymalną fragmentację i potencjalnie wpaść w kłopoty.

magicandre1981
źródło
1

Według Condusiv Technologies:

Dyski SSD zaczynają się naprawdę szybko, a następnie szybko tracą prędkość iz czasem stają się przedmiotem korupcji. Dyski SSD wymagają, aby stare dane były usuwane przed zapisaniem nowych danych, a nie tylko zapisywania starych informacji, jak w przypadku dysków twardych. Podwaja to zużycie i może powodować poważne problemy.

Podstawowym problemem jest spadek prędkości zapisu z powodu fragmentacji wolnej przestrzeni. Małe wolne miejsca rozmieszczone na dysku SSD powodują, że system plików zapisuje plik w pofragmentowanych kawałkach na tych małych dostępnych wolnych miejscach. W ten sposób zmniejsza wydajność zapisu nawet o 80% na dysku SSD.

Dyski SSD mogą zapisywać na dysku tylko tyle razy, ile mają skończoną liczbę zapisów, które mogą wykonać. Ze względu na podwojenie efektu konieczności czytania i usuwania przed ponownym zapisaniem dyski SSD są dwukrotnie częściej używane.

Gdy dysk SSD zbliża się do limitu, dochodzi do większej fragmentacji i błędów zapisu, co powoduje spowolnienie dysku SSD. Wydajność zapisu zmniejsza się proporcjonalnie wraz ze wzrostem fragmentacji wolnego miejsca. Wszystkie dyski SSD będą cierpieć z powodu tego problemu w pewnym momencie, chyba że HyperFast zostanie użyty do optymalizacji dysku SSD.

Dlatego zalecają używanie swojego produktu o nazwie Diskeeper. Kodowanie dla firmy:

Diskeeper z HyperFastem utrzymuje system tak szybko, jak przy zakupie, optymalizując wolne miejsce na dysku SSD. Funkcja HyperFast, dołączona do Diskeepera 12, rozwiązuje te problemy, inteligentnie eliminując zmniejszającą wydajność fragmentację wolnej przestrzeni, która może promować losowe, a nie bardziej wydajne sekwencyjne zapisywanie. Ta technologia wraz z technologią IntelliWrite promuje bardziej wydajne i korzystne zapisywanie sekwencyjne, a nie zapisywanie losowe.

Więcej informacji o ich produkcie jest dostępnych:

http://www.condusiv.com/products/diskeeper/

Szymon
źródło