Udostępnij za pośrednictwem


Konfigurowanie dostrajania indeksu w usłudze Azure Database for PostgreSQL — serwer elastyczny

DOTYCZY: Azure Database for PostgreSQL — serwer elastyczny

Dostrajanie indeksu można włączyć, wyłączyć i skonfigurować za pomocą zestawu parametrów sterujących jego zachowaniem, takich jak częstotliwość uruchamiania sesji dostrajania.

Włączanie dostrajania indeksu

Dostrajanie indeksu zależy od magazynu zapytań. Nie zalecamy włączania magazynu zapytań w warstwie cenowej Z możliwością zwiększenia wydajności, jakie może mieć. Z tego samego powodu dostrajanie indeksu nie jest zalecane w przypadku serwerów w warstwie Z możliwością serii.

Dostrajanie indeksu to funkcja zgody, która nie jest domyślnie włączona na serwerze. Można ją włączyć lub wyłączyć globalnie dla wszystkich baz danych na danym serwerze i nie można jej włączyć ani wyłączyć dla każdej bazy danych.

Włączanie dostrajania indeksu w witrynie Azure Portal (za pomocą parametrów serwera)

Korzystanie z witryny Azure Portal:

  1. Wybierz wystąpienie serwera elastycznego usługi Azure Database for PostgreSQL.

  2. W menu zasobów w sekcji Ustawienia wybierz pozycję Parametry serwera.

    Zrzut ekranu przedstawiający stronę Parametry serwera w sekcji Ustawienia.

  3. Wyszukaj ciąg pg_qs.query_capture_mode.

    Zrzut ekranu przedstawiający sposób wyszukiwania parametru serwera pg_qs.query_capture_mode.

  4. Ustaw jego wartość na TOP lub ALL, w zależności od tego, czy chcesz śledzić zapytania najwyższego poziomu lub zagnieżdżone. Zapytania zagnieżdżone to zapytania wykonywane wewnątrz funkcji lub procedury. Aby zobaczyć najwyższą korzyść z dostrajania indeksu, zalecane jest ustawienie tego parametru ALL .

    Zrzut ekranu przedstawiający sposób ustawiania wartości parametru serwera pg_qs.query_capture_mode.

  5. Wyszukaj ciąg index_tuning.mode.

    Zrzut ekranu przedstawiający sposób wyszukiwania parametru serwera index_tuning.mode w celu ustawienia go na RAPORT.

  6. Ustaw dla niej wartość REPORT.

    Zrzut ekranu przedstawiający sposób ustawiania wartości index_tuning.mode na REPORT.

Uwaga

Wyłączenie dostrajania indeksu nie powoduje automatycznego wyłączenia magazynu zapytań. Oceń, czy chcesz kontynuować korzystanie z funkcji Monitorowanie wydajności z magazynem zapytań w celu monitorowania wydajności obciążenia i pozostawienia go włączonego lub, jeśli chcesz go wyłączyć, ustaw wartość pg_qs.query_capture_modeNONE.

  1. Wybierz pozycję Zapisz.

    Zrzut ekranu przedstawiający sposób zapisywania zmodyfikowanych parametrów w celu włączenia dostrajania indeksu.

  2. Poczekaj na pomyślne zakończenie wdrożenia przed rozważeniem włączenia funkcji.

    Zrzut ekranu przedstawiający zainicjowane wdrożenie w celu zapisania zmodyfikowanych parametrów serwera po pomyślnym zakończeniu.

Włączanie dostrajania indeksu w witrynie Azure Portal (za pomocą dostrajania indeksu)

Korzystanie z witryny Azure Portal:

  1. Wybierz wystąpienie serwera elastycznego usługi Azure Database for PostgreSQL.

  2. W menu zasobów w sekcji Szczegółowe informacje o wydajności zapytań wybierz pozycję Dostrajanie indeksu.

    Zrzut ekranu przedstawiający opcję menu Dostrajanie indeksu w sekcji Szczegółowe informacje o wydajności zapytań w celu włączenia dostrajania indeksu.

  3. pg_qs.query_capture_mode Jeśli ustawiono NONE wartość lub index_tuning.mode ustawiono OFFwartość , strona dostrajania indeksu umożliwia włączenie dostrajania indeksu. Wybierz jeden z dwóch przycisków Włącz dostrajanie indeksu, aby włączyć funkcję dostrajania indeksu i wymaganą zależność magazynu zapytań, jeśli magazyn zapytań jest wyłączony.

    Zrzut ekranu przedstawiający sposób włączania dostrajania indeksu za pośrednictwem strony dostrajania indeksu.

  4. Przed rozważeniem funkcji poczekaj na pomyślne zakończenie wdrożenia.

    Zrzut ekranu przedstawiający ukończone wdrożenie w celu włączenia dostrajania indeksu.

  5. Po włączeniu dostrajania indeksu poczekaj 12 godzin, aby aparat dostrajania indeksów analizować obciążenie zbierane przez magazyn zapytań w tym czasie, a w końcu tworzyć lub usuwać zalecenia dotyczące indeksu.

Ważne

Po włączeniu dostrajania indeksu za pomocą przycisku Włącz dostrajanie indeksu, jeśli pg_qs.query_capture_mode ustawiono wartość NONE, zostanie ona zmieniona na ALL. Jeśli parametr został już ustawiony na TOP wartość lub ALL, pozostaje w bieżącym stanie.

Wyłączanie dostrajania indeksu

Wyłączenie dostrajania indeksu można również osiągnąć, zmieniając odpowiedni parametr serwera lub używając strony dostrajania indeksu.

Wyłączanie dostrajania indeksu w witrynie Azure Portal (za pomocą parametrów serwera)

Korzystanie z witryny Azure Portal:

  1. Wybierz wystąpienie serwera elastycznego usługi Azure Database for PostgreSQL.

  2. W menu zasobów w sekcji Ustawienia wybierz pozycję Parametry serwera.

    Zrzut ekranu przedstawiający stronę Parametry serwera w sekcji Ustawienia.

  3. Wyszukaj ciąg index_tuning.mode.

    Zrzut ekranu przedstawiający sposób wyszukiwania parametru serwera index_tuning.mode, aby ustawić go na wartość WYŁĄCZONE.

  4. Ustaw dla niej wartość OFF.

    Zrzut ekranu przedstawiający sposób ustawiania wartości index_tuning.mode na wartość OFF.

Uwaga

Wyłączenie dostrajania indeksu nie powoduje automatycznego wyłączenia magazynu zapytań. Oceń, czy chcesz kontynuować korzystanie z funkcji Monitorowanie wydajności z magazynem zapytań w celu monitorowania wydajności obciążenia i pozostawienia go włączonego lub, jeśli chcesz go wyłączyć, ustaw wartość pg_qs.query_capture_modeNONE.

  1. Wybierz pozycję Zapisz.

    Zrzut ekranu przedstawiający sposób zapisywania zmodyfikowanych parametrów w celu wyłączenia dostrajania indeksu.

  2. Poczekaj na pomyślne zakończenie wdrożenia przed rozważeniem wyłączenia funkcji.

    Zrzut ekranu przedstawiający zainicjowane wdrożenie w celu zapisania zmodyfikowanych parametrów serwera po pomyślnym zakończeniu.

Wyłączanie dostrajania indeksu w witrynie Azure Portal (za pomocą dostrajania indeksu)

Korzystanie z witryny Azure Portal:

  1. Wybierz wystąpienie serwera elastycznego usługi Azure Database for PostgreSQL.

  2. W menu zasobów w sekcji Szczegółowe informacje o wydajności zapytań wybierz pozycję Dostrajanie indeksu.

    Zrzut ekranu przedstawiający opcję menu Dostrajanie indeksu w sekcji Szczegółowe informacje o wydajności zapytań, aby wyłączyć dostrajanie indeksu.

  3. Wybierz przycisk Wyłącz dostrajanie indeksu, aby wyłączyć tę funkcję.

    Zrzut ekranu przedstawiający sposób wyłączania dostrajania indeksu za pośrednictwem strony dostrajania indeksu.

  4. Przed rozważeniem funkcji poczekaj na pomyślne zakończenie wdrożenia.

    Zrzut ekranu przedstawiający ukończone wdrożenie w celu wyłączenia dostrajania indeksu.

  5. Oceń, czy chcesz kontynuować korzystanie z funkcji Monitorowanie wydajności z magazynem zapytań w celu monitorowania wydajności obciążenia i pozostawienia go włączonego lub, jeśli chcesz go wyłączyć, ustaw wartość pg_qs.query_capture_modeNONE.

Ważne

Gdy dostrajanie indeksu jest wyłączone za pomocą przycisku Wyłącz dostrajanie indeksu, parametr pg_qs.query_capture_mode serwera pozostanie nienaruszony.

Opcje konfiguracji

Po włączeniu dostrajania indeksu wznawia się z częstotliwością skonfigurowaną w parametrze index_tuning.analysis_interval serwera (domyślnie 720 minut lub 12 godzin) i rozpoczyna analizowanie obciążenia rejestrowanego przez magazyn zapytań w tym okresie.

Zwróć uwagę, że jeśli zmienisz wartość parametru index_tuning.analysis_interval, będzie ona obserwowana tylko po zakończeniu następnego zaplanowanego wykonywania. Na przykład jeśli włączysz dostrajanie indeksu jeden dzień o godzinie 10:00, ponieważ wartość domyślna to index_tuning.analysis_interval 720 minut, pierwsze wykonanie zostanie zaplanowane do rozpoczęcia o godzinie 10:00 tego samego dnia. Wszelkie zmiany wprowadzone w wartości index_tuning.analysis_interval od 10:00 do 10:00 nie będą mieć wpływu na ten początkowy harmonogram. Tylko po zakończeniu zaplanowanego przebiegu odczytuje bieżącą wartość ustawioną dla index_tuning.analysis_interval i będzie planować następne wykonanie zgodnie z tej wartości.

Dostępne są następujące opcje konfigurowania parametrów dostrajania indeksu:

Parametr Opis Wartość domyślna Zakres Units (Jednostki kontroli powietrza)
index_tuning.analysis_interval Ustawia częstotliwość wyzwalania każdej sesji optymalizacji indeksu po ustawieniu index_tuning.mode na REPORTwartość . 720 60 - 10080 minutes
index_tuning.max_columns_per_index Maksymalna liczba kolumn, które mogą być częścią klucza indeksu dla dowolnego zalecanego indeksu. 2 1 - 10
index_tuning.max_index_count Maksymalna liczba indeksów zalecanych dla każdej bazy danych podczas jednej sesji optymalizacji. 10 1 - 25
index_tuning.max_indexes_per_table Maksymalna liczba indeksów, które mogą być zalecane dla każdej tabeli. 10 1 - 25
index_tuning.max_queries_per_database Liczba najwolniejszych zapytań na bazę danych, dla której indeksy mogą być zalecane. 25 5 - 100
index_tuning.max_regression_factor Akceptowalna regresja wprowadzona przez zalecany indeks na dowolnej z zapytań analizowanych podczas jednej sesji optymalizacji. 0.1 0.05 - 0.2 percentage
index_tuning.max_total_size_factor Maksymalny całkowity rozmiar w procentach całkowitego miejsca na dysku, z którego mogą korzystać wszystkie zalecane indeksy dla dowolnej bazy danych. 0.1 0 - 1 percentage
index_tuning.min_improvement_factor Poprawa kosztów zalecana przez indeks musi zapewnić co najmniej jedno z zapytań analizowanych podczas jednej sesji optymalizacji. 0.2 0 - 20 percentage
index_tuning.mode Konfiguruje optymalizację indeksu jako wyłączoną (OFF) lub włączoną, aby emitować tylko zalecenie. Wymaga włączenia magazynu zapytań przez ustawienie pg_qs.query_capture_mode na TOP lub ALL. OFF OFF, REPORT
index_tuning.unused_dml_per_table Minimalna liczba codziennych średnich operacji DML wpływających na tabelę, więc ich nieużywane indeksy są uznawane za upuszczanie. 1000 0 - 9999999
index_tuning.unused_min_period Minimalna liczba dni, w których indeks nie został użyty, na podstawie statystyk systemowych, dlatego jest brany pod uwagę do upuszczania. 35 30 - 70
index_tuning.unused_reads_per_table Minimalna liczba codziennych operacji odczytu wpływających na tabelę, tak aby ich nieużywane indeksy były brane pod uwagę podczas upuszczania. 1000 0 - 9999999