| Termin | Definicja |
|---|---|
| Niewydolność systemu I/O | Niewydolność systemu I/O to wąskie gardło dysków objawiające się długim czasem oczekiwania na odczyt i zapis stron bazy. Jak powstaje wąskie gardło I/ONiewydolność systemu I/O oznacza sytuację, w której urządzenie pamięci masowej albo cała ścieżka obsługi operacji wejścia i wyjścia nie dostarcza danych wystarczająco szybko dla programu, który ich potrzebuje. Skrót I/O pochodzi od angielskiego „input/output” i obejmuje między innymi odczyt oraz zapis danych na dysku, przekazywanie poleceń przez kontroler, obsługę sterownika i oczekiwanie procesu na zakończenie operacji. W przypadku bazy danych problem może być widoczny jako długi czas oczekiwania na odczyt lub zapis stron, czyli bloków danych używanych przez silnik bazy. Wąskie gardło nie musi oznaczać całkowitej awarii dysku. Nośnik może działać poprawnie, ale jego opóźnienia mogą być zbyt duże dla obciążenia generowanego przez aplikację. Znaczenie ma nie tylko maksymalna szybkość transferu wyrażana w megabajtach na sekundę, lecz także liczba operacji wejścia i wyjścia na sekundę, czas odpowiedzi pojedynczego żądania, długość kolejki poleceń oraz udział operacji losowych. Odczyt dużego, ciągłego pliku może przebiegać sprawnie, podczas gdy wiele małych odczytów z różnych obszarów dysku będzie powodowało znacznie dłuższe oczekiwanie. Objawy opóźnionego odczytu i zapisu stronJednym z typowych objawów jest spowolnienie aplikacji mimo niewielkiego wykorzystania procesora. Program może pozostawać pozornie bezczynny, ponieważ wątek wykonujący operację czeka na dane z nośnika. W bazie danych może to wpływać na zapytania, które muszą pobrać strony z dysku, a także na zapis zmian do plików danych, dzienników transakcji lub innych plików roboczych. Użytkownik może wtedy obserwować długie otwieranie rekordów, opóźnione zapisywanie zmian albo niestabilny czas odpowiedzi. Przyczyną może być zapełnienie dysku, narastająca liczba błędów odczytu, zużycie komórek pamięci flash, nieprawidłowo działający sterownik, przegrzewanie kontrolera, ograniczenie interfejsu albo konkurencyjne obciążenie generowane przez inne procesy. Na komputerze z dyskiem talerzowym dodatkowym źródłem opóźnień jest mechaniczne przemieszczanie głowicy pomiędzy rozproszonymi obszarami danych. Na dysku SSD lub NVMe opóźnienia mogą wzrosnąć między innymi po wyczerpaniu pamięci podręcznej, przy intensywnym zapisie lub gdy kontroler wykonuje wewnętrzne operacje porządkowania danych. Rozróżnienie problemu dysku od problemu aplikacjiDiagnoza niewydolności I/O wymaga porównania kilku obserwacji wykonanych w tym samym czasie. W systemie Windows można sprawdzić w Menedżerze zadań lub Monitorze zasobów aktywność dysku, czas aktywności, szybkość transferu i procesy generujące operacje. Monitor wydajności pozwala analizować między innymi długość kolejki dyskowej, czas odpowiedzi oraz liczbę odczytów i zapisów. Sama wartość procentowego użycia dysku nie wystarcza do oceny przyczyny, ponieważ urządzenie może być zajęte przez długi czas przy stosunkowo małym transferze. Warto także sprawdzić stan nośnika za pomocą narzędzia producenta i odczytu informacji diagnostycznych SMART lub NVMe, a w Podglądzie zdarzeń poszukać błędów dotyczących kontrolera, sterownika i systemu plików. Należy odróżnić przeciążenie od uszkodzenia. Wysokie opóźnienia bez błędów mogą wynikać z nieodpowiedniego obciążenia lub braku wolnego miejsca, natomiast powtarzające się błędy odczytu, zaniki urządzenia, zawieszanie systemu albo uszkodzone pliki wskazują na ryzyko awarii. Nie powinno się rozpoczynać intensywnych testów zapisu na nośniku zawierającym ważne dane bez wcześniejszego zabezpieczenia kopii. Postępowanie przy podejrzeniu niewydolności I/OUsuwanie problemu zaczyna się od ustalenia, który element ścieżki wejścia i wyjścia jest ograniczeniem. Należy zweryfikować ilość wolnego miejsca, temperaturę nośnika, poprawność przewodów i złączy, działanie sterownika oraz obciążenie powodowane przez pozostałe programy. W komputerze stacjonarnym trzeba uwzględnić również sposób podłączenia dysku i współdzielenie zasobów przez kontroler. Jeżeli nośnik zgłasza błędy lub jego stan szybko się pogarsza, priorytetem jest kopia danych i wymiana uszkodzonego elementu, a nie dalsze obciążanie go testami. Warszawskie Pogotowie Komputerowe wykonuje profesjonalną naprawę laptopów, komputerów PC i ich podzespołów, dlatego przy podejrzeniu problemów z dyskiem można zlecić sprawdzenie nośnika, połączeń oraz wpływu urządzenia na działanie systemu. Wynik diagnostyki powinien wskazać, czy źródłem opóźnień jest zużyty dysk, problem z konfiguracją, przeciążenie operacjami wejścia i wyjścia czy usterka innego podzespołu. Dopiero na tej podstawie można bezpiecznie dobrać dalsze działanie, takie jak uporządkowanie danych, usunięcie przyczyny przeciążenia albo wymiana nośnika. |