| Termin | Definicja |
|---|---|
| Indeks z sortowaniem malejącym | Indeks z sortowaniem malejącym to indeks przechowujący wartości w porządku od największej do najmniejszej. Jak działa indeks z sortowaniem malejącymIndeks z sortowaniem malejącym przechowuje wartości klucza w kolejności od największej do najmniejszej. Jeżeli kolumna zawiera na przykład liczby 98, 76, 54 i 21, wyszukiwanie w takim indeksie rozpoczyna się od wartości 98 i przechodzi w kierunku coraz mniejszych wartości. Dla tekstu kolejność zależy od reguł porównywania znaków używanych przez konkretny silnik bazy danych i jego konfigurację sortowania. Sam indeks nie zmienia danych w tabeli. Zmienia jedynie sposób uporządkowania dodatkowej struktury, z której silnik może korzystać podczas wyszukiwania lub odczytu rekordów. Indeks malejący jest przydatny przede wszystkim wtedy, gdy zapytania często żądają najnowszych, największych albo najwyżej sklasyfikowanych wartości. Typowym przykładem jest pobieranie rekordów według daty od najpóźniejszej do najwcześniejszej, sortowanie produktów według ceny malejąco albo wybieranie wpisów z największym numerem identyfikacyjnym. Dzięki odpowiedniemu uporządkowaniu silnik może odczytać potrzebny zakres indeksu bez każdorazowego sortowania całego wyniku w pamięci lub w pliku tymczasowym. Różnica między kolejnością indeksu a ORDER BYW zapytaniu SQL kierunek sortowania wyniku określa się zwykle za pomocą klauzuli Znaczenie kierunku rośnie przy indeksach wielokolumnowych. Indeks złożony z kolumn uporządkowanych jako Zapytania, zakresy i koszt utrzymania strukturyIndeks malejący może przyspieszać zapytania ograniczające zakres wartości, takie jak wyszukiwanie rekordów z datą nie wcześniejszą niż określony moment, a następnie zwracanie ich od najnowszych. Szczególnie korzystne jest połączenie warunku filtrującego z limitem liczby wyników, na przykład pobranie kilku ostatnich zdarzeń. Silnik może wtedy przejść do odpowiedniego miejsca w indeksie, odczytać niewielką liczbę wpisów i zakończyć pracę bez analizowania całej tabeli. Rzeczywista korzyść zależy jednak od selektywności warunku, wielkości tabeli, liczby pasujących rekordów oraz planu wykonania wybranego przez optymalizator. Indeks nie jest bezpłatny. Zajmuje miejsce na dysku, a przy dodawaniu, usuwaniu lub aktualizacji rekordu silnik musi odpowiednio zmienić także strukturę indeksu. Jeżeli indeksowana kolumna często się zmienia, koszt tych operacji może zwiększyć czas zapisu. Zbyt duża liczba indeksów może więc spowolnić import danych, aktualizacje i usuwanie rekordów, mimo że pojedyncze zapytania odczytujące działają szybciej. Przed dodaniem indeksu należy sprawdzić plan wykonania zapytania, jego rzeczywisty czas oraz częstotliwość wykonywania. Samo dodanie kierunku malejącego bez analizy zapytań nie gwarantuje poprawy. Sprawdzanie indeksu podczas serwisowania komputeraProblemy z indeksem z sortowaniem malejącym mogą objawiać się długim oczekiwaniem na listy sortowane od najnowszych lub najwyższych wartości, wysokim użyciem dysku albo dużą aktywnością procesora podczas wykonywania zapytań. Diagnostyka powinna obejmować sprawdzenie definicji indeksu, kolumn używanych w filtrach i sortowaniu oraz planu wykonania konkretnego zapytania. Warto również ustalić, czy tabela nie jest nadmiernie rozbudowana, czy indeks nie jest pomijany przez optymalizator oraz czy wydajność nie jest ograniczana przez pamięć operacyjną albo wolny nośnik danych. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i podzespołów, dlatego przy problemach z wolnym działaniem aplikacji bazodanowej można sprawdzić stan dysku, pamięci RAM, temperatury podzespołów oraz stabilność systemu. Te elementy nie naprawiają samej definicji indeksu, ale mogą wpływać na czas odczytu danych i wykonywania zapytań. Po stronie oprogramowania należy zachować kopię konfiguracji, zebrać informacje o zapytaniach oraz wprowadzać zmiany indeksów dopiero po porównaniu planów i czasów działania przed oraz po modyfikacji. |