Udostępnij za pośrednictwem


Wskazówki dotyczące dostrajania wydajności dla bezserwerowej puli SQL usługi Azure Synapse Analytics

Dotyczy: Azure Synapse Analytics

Ten artykuł pomaga zwiększyć wydajność bezserwerowej puli SQL usługi Azure Synapse Analytics.

Uwaga 16.

Przejrzyj listę znanych problemów, które są obecnie aktywne lub ostatnio rozwiązane w usłudze Azure Synapse Analytics.

Zapoznaj się z kilkoma kolejnymi sekcjami, aby uzyskać informacje na temat uzyskiwania optymalnej wydajności i zapobiegania awariom związanym z ograniczeniami zasobów w bezserwerowych pulach SQL usługi Azure Synapse Analytics.

Najlepsze rozwiązania i przewodniki rozwiązywania problemów

Informacje i strategie przedstawione w poniższych artykułach mogą pomóc uzyskać najlepszą wydajność z bezserwerowej puli SQL. Zalecamy używanie tych artykułów do przeglądania przypadków użycia i rozwiązywania typowych problemów.

Omówienie skalowania w bezserwerowej puli SQL

Bezserwerowe pule SQL nie wymagają ręcznego wybierania odpowiedniego rozmiaru. System automatycznie dostosowuje rozmiar na podstawie wymagań dotyczących zapytań, a tym samym zarządza infrastrukturą i wybiera odpowiedni rozmiar rozwiązania.

Wskazówki dotyczące dostrajania wydajności dla plików usługi Delta Lake

Aby uzyskać więcej informacji na temat dostrajania wydajności plików usługi Delta Lake, zobacz następujące zasoby:

Wskazówki dotyczące dostrajania wydajności dla plików CSV

Podczas wykonywania zapytań dotyczących plików CSV w bezserwerowej puli SQL najważniejsze zadanie, aby zapewnić wysoką wydajność, jest utworzenie statystyk dotyczących tabel zewnętrznych. Chociaż statystyki są tworzone automatycznie w plikach Parquet i CSV i uzyskiwane przy użyciu metody , odczytywanie plików CSV przy OPENQUERY()użyciu tabel zewnętrznych wymaga ręcznego utworzenia statystyk.

Aby uzyskać bardziej szczegółowe informacje na temat roli statystyk podczas wykonywania zapytań dotyczących plików CSV w bezserwerowych pulach SQL, zobacz następujące artykuły:

Zalecenia dotyczące korzystania z usługi Power BI i innych narzędzi do raportowania

W przypadku korzystania z usługi Power BI i innych narzędzi do raportowania zalecamy następujące najlepsze rozwiązania:

  • Zawsze sprawdzaj lokalizację dzierżawy.
  • Skonfiguruj pamięć podręczną, aby zapewnić lepsze środowisko użytkownika.
  • Unikaj zwracania milionów rekordów do pulpitu nawigacyjnego.
  • Użyj zaplanowanych odświeżeń, aby uniknąć równoległych wykonań zapytań, które opróżniają zasoby puli bezserwerowej SQL.
  • Użyj platformy Spark do wstępnego agregowania typowych zapytań analitycznych. Takie podejście "zapis jednokrotny/odczyt wielu" może uniknąć dużych zapytań, które są uruchamiane w sposób ciągły.
  • W przypadku sprzężeń między różnymi magazynami danych: użyj filtrów, aby uniknąć woluminów danych big data, które zostały przeniesione przez infrastrukturę platformy Azure.
  • Użyj Latin1_General_100_BIN2_UTF8 sortowania dla typów danych znaków. To sortowanie pozwala uniknąć przesyłania wszystkich danych z magazynu do bezserwerowej puli SQL, wypychając filtry, gdy narzędzia odczytują z magazynu.
  • Użyj najbardziej optymalnego rozmiaru, jeśli rzutujesz lub konwertujesz dane na char lub varchar podczas uruchamiania zapytania. Jeśli to możliwe, unikaj korzystania z typu VARCHAR(MAX).
  • Automatyczne wnioskowanie konwertuje typy danych na format, który może nie być optymalny. Optymalizuj typy danych za pomocą klauzuli WITH.
  • Zasoby puli bezserwerowej usługi Azure Synapse SQL mają limity. Jednoczesne uruchamianie zapytań spowoduje zużycie zasobów. Pulpity nawigacyjne usługi Power BI (PBI) często docierają do limitów zasobów, gdy wiele odświeżeń odbywa się równolegle. Zaplanowane odświeżanie i testowanie obciążenia mogą pomóc uniknąć tego problemu. Ponadto korzystanie z wielu obszarów roboczych usługi Azure Synapse może spełniać większe wymagania dotyczące współbieżności.
  • Możesz uruchomić zapytanie sys.columns lub użyć sp_describe_first_result_set polecenia i select top 0 from <view> sprawdzić typy danych po utworzeniu widoku. Takie podejście jest szybsze i mniej kosztowne niż użycie metody SELECT * FROM....
  • Za pomocą generatora instrukcji automatycznie utwórz optymalne formaty kolumn dla zapytania.
  • OPENJSON Użyj funkcji , aby uwidocznić zagnieżdżone dane JSON jako kolumny. Jeśli jednak używasz AS JSON również polecenia , typ kolumny musi mieć wartość NVARCHAR(MAX). Takie podejście nie jest idealne do wydajności. Najlepszą opcją jest użycie klauzuli WITH w celu uwidocznienia zagnieżdżonych tablic jako kolumn.
  • Klucz partycji magazynu transakcyjnego usługi Cosmos DB nie jest używany w magazynie analitycznym. W usłudze Azure Synapse Link możesz teraz modelować dane transakcyjne, aby optymalizować pozyskiwanie danych i odczyty punktowe.

Dodatkowe wskazówki i najlepsze rozwiązania

Kategoria Zalecane działania i dokumentacja
Eksploracja danych Magazyn platformy Azure
Przechowywanie wyników zapytań w usłudze Azure Storage
Logiczny magazyn danych
Funkcja OPENROWSET i tabele zewnętrzne Funkcja OPENROWSET
Tabele zewnętrzne
Procedury składowane
Widoki
Przekształcenia danych
Funkcje języka T-SQL dostępne w bezserwerowych pulach SQL Funkcje języka T-SQL w pulach usługi Azure Synapse

Zastrzeżenie dotyczące innych firm

Produkty innych firm omówione w tym artykule są wytwarzane przez producentów niezależnych od firmy Microsoft. Firma Microsoft nie udziela żadnych gwarancji, dorozumianych ani żadnego innego rodzaju, w odniesieniu do wydajności lub niezawodności tych produktów.