Optymalizowanie źródeł

Dla każdego źródła z wyjątkiem usługi Azure SQL Database zaleca się zachowanie opcji Użyj bieżącego partycjonowania jako wybranej wartości. Podczas odczytywania ze wszystkich innych systemów źródłowych przepływy danych automatycznie partycjonują dane równomiernie na podstawie rozmiaru danych. Nowa partycja jest tworzona dla około 128 MB danych. Wraz ze wzrostem rozmiaru danych liczba partycji rośnie.

Wszelkie partycjonowanie niestandardowe odbywa się po odczytaniu danych przez platformę Spark i negatywnym wpływie na wydajność przepływu danych. Ponieważ dane są równomiernie partycjonowane podczas odczytu, nie jest zalecane, chyba że najpierw rozumiesz kształt i kardynalność danych.

Uwaga

Szybkość odczytu może być ograniczona przez przepływność systemu źródłowego.

Źródła usługi Azure SQL Database

Usługa Azure SQL Database ma unikatową opcję partycjonowania o nazwie "Source" partitioning (Partycjonowanie źródła). Włączenie partycjonowania źródłowego może poprawić czas odczytu z usługi Azure SQL Database, włączając połączenia równoległe w systemie źródłowym. Określ liczbę partycji i sposób partycjonowania danych. Użyj kolumny partycji z wysoką kardynalnością. Możesz również wprowadzić zapytanie zgodne ze schematem partycjonowania tabeli źródłowej.

Napiwek

W przypadku partycjonowania źródłowego operacje we/wy programu SQL Server są wąskim gardłem. Dodanie zbyt wielu partycji może nasycić źródłową bazę danych. Zazwyczaj cztery lub pięć partycji jest idealnym rozwiązaniem w przypadku korzystania z tej opcji.

Source partitioning

Poziom izolacji

Poziom izolacji odczytu w systemie źródłowym usługi Azure SQL wpływa na wydajność. Wybranie opcji "Odczyt niezatwierdzony" zapewnia najszybszą wydajność i zapobieganie wszelkim blokadom bazy danych. Aby dowiedzieć się więcej na temat poziomów izolacji SQL, zobacz Opis poziomów izolacji.

Odczytywanie przy użyciu zapytania

Możesz odczytać z usługi Azure SQL Database przy użyciu tabeli lub zapytania SQL. Jeśli wykonujesz zapytanie SQL, zapytanie musi zostać ukończone przed rozpoczęciem transformacji. Zapytania SQL mogą być przydatne do wypychania operacji, które mogą być wykonywane szybciej i zmniejszyć ilość danych odczytywanych z programu SQL Server, takich jak SELECT, WHERE i JOIN instrukcji. Podczas wypychania operacji tracisz możliwość śledzenia pochodzenia i wydajności przekształceń przed wejściem danych do przepływu danych.

Źródła usługi Azure Synapse Analytics

W przypadku korzystania z usługi Azure Synapse Analytics w opcjach źródłowych istnieje ustawienie o nazwie Włącz przemieszczanie . Dzięki temu usługa może odczytywać dane z usługi Synapse przy użyciu polecenia Staging, co znacznie poprawia wydajność odczytu przy użyciu najbardziej wydajnych funkcji ładowania zbiorczego, takich jak CETAS i COPY. Staging Włączenie wymaga określenia lokalizacji przejściowej usługi Azure Blob Storage lub Azure Data Lake Storage Gen2 w ustawieniach działania przepływu danych.

Enable staging

Źródła oparte na plikach

Parquet a tekst rozdzielany

Chociaż przepływy danych obsługują różne typy plików, format Parquet natywny dla platformy Spark jest zalecany w celu uzyskania optymalnego czasu odczytu i zapisu.

Jeśli używasz tego samego przepływu danych w zestawie plików, zalecamy odczytywanie z folderu przy użyciu ścieżek wieloznacznych lub odczytywanie z listy plików. Jedno uruchomienie działania przepływu danych może przetwarzać wszystkie pliki w partii. Więcej informacji na temat konfigurowania tych ustawień można znaleźć w sekcji Przekształcanie źródła w dokumentacji łącznika usługi Azure Blob Storage.

Jeśli to możliwe, unikaj używania działania For-Each do uruchamiania przepływów danych w zestawie plików. Powoduje to, że każda iteracja poszczególnych elementów uruchamia własny klaster Spark, który często nie jest konieczny i może być kosztowny.

Wbudowane zestawy danych a udostępnione zestawy danych

Zestawy danych usług ADF i Synapse są zasobami udostępnionymi w fabrykach i obszarach roboczych. Jednak podczas odczytywania dużej liczby folderów źródłowych i plików ze źródłami rozdzielanymi tekstami i źródłami JSON można zwiększyć wydajność odnajdywania plików przepływu danych, ustawiając opcję "Projektowany schemat użytkownika" wewnątrz projekcji | Okno dialogowe Opcje schematu. Ta opcja wyłącza domyślne wykrywanie schematu usługi ADF i znacznie poprawia wydajność odnajdywania plików. Przed ustawieniem tej opcji zaimportuj projekcję, aby usługa ADF ma istniejący schemat do projekcji. Ta opcja nie działa z dryfem schematu.

Zobacz inne artykuły Przepływ danych związane z wydajnością: