Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
SSIS Integration Runtime w ramach usługi Azure Data Factory
Przekształcenie agregujące stosuje funkcje agregujące, takie jak Średnia, do wartości kolumn i kopiuje wyniki do danych wyjściowych przekształcenia. Oprócz funkcji agregujących przekształcenie udostępnia klauzulę GROUP BY, której można użyć do określania grup do agregowania.
Operations
Transformacja Agregacja obsługuje następujące operacje.
| Operation | Description |
|---|---|
| Grupuj według | Dzieli zestawy danych na grupy. Kolumny dowolnego typu danych mogą służyć do grupowania. Aby uzyskać więcej informacji, zobacz GROUP BY (Transact-SQL). |
| Suma | Sumuje wartości w kolumnie. Można sumować tylko kolumny z typami danych liczbowych. Aby uzyskać więcej informacji, zobacz SUM (Transact-SQL). |
| Average | Zwraca średnią wartości w kolumnie. Tylko kolumny z typami danych liczbowych mogą być uśredniane. Aby uzyskać więcej informacji, zobacz AVG (Transact-SQL). |
| Liczba | Zwraca liczbę elementów w grupie. Aby uzyskać więcej informacji, zobacz COUNT (Transact-SQL). |
| Zlicz unikatowe | Zwraca liczbę unikatowych wartości niebędących null w grupie. |
| Minimalna wartość | Zwraca wartość minimalną w grupie. Aby uzyskać więcej informacji, zobacz MIN (Transact-SQL). W przeciwieństwie do funkcji Transact-SQL MIN ta operacja może być używana tylko z typami danych liczbowych, dat i godzin. |
| Maximum | Zwraca wartość maksymalną w grupie. Aby uzyskać więcej informacji, zobacz MAX (Transact-SQL). W przeciwieństwie do funkcji Transact-SQL MAX ta operacja może być używana tylko z typami danych liczbowych, dat i godzin. |
Transformacja Agregacji obsługuje wartości null w taki sam sposób jak silnik relacyjnej bazy danych SQL Server. Zachowanie jest definiowane w standardzie SQL-92. Obowiązują następujące zasady:
W klauzuli GROUP BY wartości null są traktowane jak inne wartości kolumn. Jeśli kolumna grupowania zawiera więcej niż jedną wartość null, wartości null są umieszczane w jednej grupie.
W funkcjach COUNT (nazwa kolumny) i COUNT (nazwa kolumny DISTINCT) wartości null są ignorowane, a wynik wyklucza wiersze zawierające wartości null w nazwanej kolumnie.
W funkcji COUNT (*) wszystkie wiersze są zliczane, w tym wiersze z wartościami null.
Duże liczby w agregacjach
Kolumna może zawierać wartości liczbowe, które wymagają szczególnej uwagi ze względu na ich dużą wartość lub wymagania dotyczące precyzji. Przekształcenie agregacji zawiera właściwość IsBig, którą można ustawić dla kolumn wyjściowych w celu wywołania specjalnej obsługi dużych liczb lub liczb o wysokiej precyzji. Jeśli wartość kolumny może przekroczyć 4 miliardy lub wymagana jest precyzja poza typem danych zmiennoprzecinkowych, parametr IsBig powinien mieć wartość 1.
Ustawienie właściwości IsBig na 1 wpływa na dane wyjściowe przekształcenia agregacji w następujący sposób:
Typ danych DT_R8 jest używany zamiast typu danych DT_R4.
Liczba wyników jest przechowywana jako typ danych DT_UI8.
Unikatowe wyniki liczby są przechowywane jako typ danych DT_UI4.
Uwaga / Notatka
Nie można ustawić wartości IsBig na 1 w kolumnach używanych w operacjach GROUP BY, Maximum lub Minimum.
Zagadnienia dotyczące wydajności
Przekształcenie Agregacja zawiera zestaw właściwości, które można ustawić w celu zwiększenia wydajności transformacji.
Podczas wykonywania operacji Grupuj według ustaw właściwości Klucze składnika lub KluczeSkalowanie składnika i danych wyjściowych. Za pomocą kluczy można określić dokładną liczbę kluczy, które ma obsłużyć transformacja. (W tym kontekście klucze odnoszą się do liczby grup, które mają wynikać z operacji Grupuj według ). Za pomocą funkcji KeysScale można określić przybliżoną liczbę kluczy. Po określeniu odpowiedniej wartości dla kluczy lub skalowania kluczy zwiększa się wydajność, ponieważ transformacja może przydzielić odpowiednią pamięć dla danych buforujących transformację.
Podczas wykonywania operacji Distinct count ustaw właściwości CountDistinctKeys lub CountDistinctScale składnika. Za pomocą funkcji CountDistinctKeys można określić dokładną liczbę kluczy, które ma obsługiwać transformacja dla operacji zliczania unikatowych wartości. (W tym kontekście CountDistinctKeys odnosi się do liczby unikatowych wartości, które mają wynikać z operacji liczba unikatowa ). Za pomocą CountDistinctScale można określić przybliżoną liczbę kluczy dla operacji liczby unikatowej. Po określeniu odpowiedniej wartości dla CountDistinctKeys lub CountDistinctScale poprawiasz wydajność, ponieważ transformacja może przydzielić odpowiednią ilość pamięci na cache danych przekształcenia.
Konfiguracja przekształcenia agregowanego
Przekształcenie agregacji można skonfigurować na poziomach transformacji, danych wyjściowych i kolumn.
Na poziomie transformacji należy skonfigurować przekształcenie agregacji dla lepszej wydajności, określając następujące wartości:
Liczba grup oczekiwanych z operacji Grupuj według.
Liczba unikatowych wartości, które mają wynikać z operacji zliczaj unikatowe .
Wartość procentowa, o jaką pamięć można rozszerzyć podczas agregacji.
Przekształcenie agregacji można również skonfigurować tak, aby wygenerować ostrzeżenie zamiast niepowodzenia, gdy wartość dzielnika wynosi zero.
Na poziomie wyjścia należy skonfigurować przekształcenie Agregujące dla zwiększenia wydajności, określając liczbę grup, które mają wynikać z operacji Grupuj według. Transformacja Agregacja obsługuje wiele danych wyjściowych, a każdy z nich można skonfigurować inaczej.
Na poziomie kolumny należy określić następujące wartości:
Agregacja wykonywana przez kolumnę.
Opcje porównania agregacji.
Możesz również skonfigurować przekształcenie agregujące pod kątem wydajności, określając następujące wartości:
Liczba grup, które mają wynikać z operacji Grupuj według w kolumnie.
Liczba unikatowych wartości, które mają wynikać z operacji Count distinct w kolumnie.
Możesz również zidentyfikować kolumny jako IsBig, jeśli kolumna zawiera duże wartości liczbowe lub wartości liczbowe o wysokiej precyzji.
Przekształcenie agregujące jest asynchroniczne, co oznacza, że nie przetwarza ani nie publikuje danych wiersz po wierszu. Zamiast tego używa całego zestawu wierszy, wykonuje swoje grupowania i agregacje, a następnie publikuje wyniki.
Ta transformacja nie przechodzi przez żadne kolumny, ale tworzy nowe kolumny w przepływie danych dla publikowanych danych. Do danych wyjściowych przekształcenia są kopiowane tylko kolumny wejściowe, do których mają zastosowanie funkcje agregujące, lub kolumny wejściowe używane do grupowania. Na przykład dane wejściowe przekształcenia agregacji mogą zawierać trzy kolumny: CountryRegion, City i Population. Grupowanie przekształceń według kolumny CountryRegion i stosowanie funkcji Sum do kolumny Population. W związku z tym dane wyjściowe nie zawierają kolumny City (Miasto ).
Można również dodać wiele danych wyjściowych do transformacji Agregacja i każdą agregację kierować do odpowiednich danych wyjściowych. Na przykład, jeśli przekształcenie Agregacja stosuje funkcje Sumy i Średniej, każda agregacja może być kierowana do różnych danych wyjściowych.
Można zastosować wiele agregacji do jednej kolumny wejściowej. Jeśli na przykład chcesz uzyskać sumę i średnią wartości dla kolumny wejściowej o nazwie Sales, możesz skonfigurować przekształcenie tak, aby zastosować zarówno funkcje Sum, jak i Average do kolumny Sales .
Przekształcenie agregujące ma jedno wejście i co najmniej jedno wyjście. Nie obsługuje wyjścia błędów.
Właściwości można ustawić za pomocą projektanta usług SSIS lub programowo.
Okno dialogowe edytora zaawansowanego
niestandardowe właściwości transformacji
Aby uzyskać więcej informacji na temat ustawiania właściwości, kliknij jeden z następujących tematów:
Agregowanie wartości w zestawie danych przy użyciu przekształcenia agregacji
Sortowanie danych dla przekształceń scalania i scalania sprzężenia
Powiązane zadania
Agregowanie wartości w zestawie danych przy użyciu przekształcenia agregacji
Edytor transformacji agregującej (zakładka Agregacje)
Użyj karty Agregacje w oknie dialogowym Edytora transformacji agregujących, aby określić kolumny do agregacji oraz właściwości agregacji. Można zastosować wiele agregacji. Ta transformacja nie generuje wyjścia błędu.
Uwaga / Notatka
Opcje liczby kluczy, skalowania kluczy, liczby unikatowych kluczy i odrębnej skali kluczy mają zastosowanie na poziomie składnika, gdy jest określony na karcie Zaawansowane , na poziomie danych wyjściowych, gdy jest określony w zaawansowanym wyświetlaniu karty Agregacje , a na poziomie kolumny, gdy jest określony na liście kolumn w dolnej części karty Agregacje .
W przekształceniu Agregacja Klucze i Skalowanie kluczy odnoszą się do liczby grup, które mają wynikać z operacji Group by. Zlicz unikatowe klucze i Zlicz unikatową skalę odwołują się do liczby unikatowych wartości, które mają wynikać z operacji distinct count .
Opcje
Zaawansowane/Podstawowe
Wyświetlanie lub ukrywanie opcji konfigurowania wielu agregacji dla wielu danych wyjściowych. Domyślnie opcje zaawansowane są ukryte.
Nazwa agregacji
Na ekranie Zaawansowane wpisz przyjazną nazwę agregacji.
Grupuj według kolumn
Na ekranie Zaawansowane wybierz kolumny do grupowania przy użyciu listy Dostępne kolumny wejściowe , jak opisano poniżej.
Skala kluczy
Na ekranie Zaawansowane opcjonalnie określ przybliżoną liczbę kluczy, które agregacja może zapisywać. Domyślnie wartość tej opcji jest nieokreślona. Jeśli ustawiono zarówno właściwości Skalowanie kluczy , jak i Klucze , pierwszeństwo ma wartość Klucze .
| Wartość | Description |
|---|---|
| Nieokreślony | Właściwość Skalowanie kluczy nie jest używana. |
| Low | Agregacja może zapisywać około 500 000 kluczy. |
| Średni | Agregacja może zapisywać około 5000 000 kluczy. |
| High | Agregacja może zapisywać więcej niż 25 000 000 kluczy. |
Klucze
Na ekranie Zaawansowane opcjonalnie określ dokładną liczbę kluczy, które agregacja może zapisywać. Jeśli określono zarówno skalę klucza , jak i klucze , pierwszeństwo ma klucze .
Dostępne Kolumny Wejściowe
Wybierz z listy dostępnych kolumn wejściowych przy użyciu pól wyboru w tej tabeli.
Kolumna wejściowa
Wybierz z listy dostępnych kolumn wejściowych.
alias danych wyjściowych
Wpisz alias dla każdej kolumny. Wartość domyślna to nazwa kolumny wejściowej; można jednak wybrać dowolną unikatową, opisową nazwę.
Operacja
Wybierz jedną z listy dostępnych operacji, korzystając z poniższej tabeli jako przewodnika.
| Operation | Description |
|---|---|
| Grupuj wg | Dzieli zestawy danych na grupy. Kolumny z dowolnym typem danych mogą służyć do grupowania. Aby uzyskać więcej informacji, zobacz dokumentację dotyczącą GROUP BY. |
| Sum | Sumuje wartości w kolumnie. Można sumować tylko kolumny z typami danych liczbowych. Aby uzyskać więcej informacji, zobacz SUM. |
| średnia | Zwraca średnią wartości w kolumnie. Tylko kolumny z typami danych liczbowych mogą być uśredniane. Aby uzyskać więcej informacji, zobacz AVG. |
| Liczba | Zwraca liczbę elementów w grupie. Aby uzyskać więcej informacji, zobacz COUNT. |
| CountDistinct | Zwraca liczbę unikatowych wartości niebędących null w grupie. Aby uzyskać więcej informacji, zobacz COUNT i Distinct. |
| Minimum | Zwraca wartość minimalną w grupie. Ograniczone do typów danych liczbowych. |
| maksymalna | Zwraca wartość maksymalną w grupie. Ograniczone do typów danych liczbowych. |
Flagi porównania
Jeśli wybierzesz Grupuj według, użyj pól wyboru, aby kontrolować, jak przekształcenie wykonuje porównanie. Aby uzyskać informacje na temat opcji porównania ciągów, zobacz Porównanie danych ciągów.
Zlicz unikalną skalę
Opcjonalnie określ przybliżoną liczbę unikatowych wartości, które może zapisywać agregacja. Domyślnie wartość tej opcji jest nieokreślona. Jeśli określono obie wartości CountDistinctScale i CountDistinctKeys , pierwszeństwo ma countDistinctKeys .
| Wartość | Description |
|---|---|
| Nieokreślony | Właściwość CountDistinctScale nie jest używana. |
| Low | Agregacja może zapisywać około 500 000 unikatowych wartości. |
| Średni | Agregacja może zapisywać około 5000 000 unikatowych wartości. |
| High | Agregacja może zapisywać więcej niż 25 000 000 unikatowych wartości. |
Zlicz unikatowe klucze
Opcjonalnie określ dokładną liczbę unikatowych wartości, które może zapisywać agregacja. Jeśli określono obie wartości CountDistinctScale i CountDistinctKeys , pierwszeństwo ma countDistinctKeys .
Edytor Przekształcenia Agregacji (Zakładka Zaawansowana)
Użyj karty Zaawansowane okna dialogowego Edytora przekształcania agregacji , aby ustawić właściwości składnika, określić agregacje i ustawić właściwości kolumn wejściowych i wyjściowych.
Uwaga / Notatka
Opcje liczby kluczy, skalowania kluczy, liczby unikatowych kluczy i odrębnej skali kluczy mają zastosowanie na poziomie składnika, gdy jest określony na karcie Zaawansowane , na poziomie danych wyjściowych, gdy jest określony w zaawansowanym wyświetlaniu karty Agregacje , a na poziomie kolumny, gdy jest określony na liście kolumn w dolnej części karty Agregacje .
W przekształceniu Agregacja Klucze i Skalowanie kluczy odnoszą się do liczby grup, które mają wynikać z operacji Group by. Zlicz unikatowe klucze i Zlicz unikatową skalę odwołują się do liczby unikatowych wartości, które mają wynikać z operacji distinct count .
Opcje
Skala kluczy
Opcjonalnie określ przybliżoną liczbę kluczy, których oczekuje agregacja. Przekształcenie używa tych informacji do optymalizacji początkowego rozmiaru pamięci podręcznej. Domyślnie wartość tej opcji jest nieokreślona. Jeśli określono zarówno skalę kluczy , jak i liczbę kluczy , pierwszeństwo ma liczba kluczy .
| Wartość | Description |
|---|---|
| Nieokreślony | Właściwość skalowania kluczy nie jest używana. |
| Low | Agregacja może zapisywać około 500 000 kluczy. |
| Średni | Agregacja może zapisywać około 5000 000 kluczy. |
| High | Agregacja może zapisywać więcej niż 25 000 000 kluczy. |
Liczba kluczy
Opcjonalnie określ dokładną liczbę kluczy, których oczekuje agregacja. Przekształcenie używa tych informacji do optymalizacji początkowego rozmiaru pamięci podręcznej. Jeśli określono zarówno skalę kluczy , jak i liczbę kluczy , pierwszeństwo ma liczba kluczy .
Zlicz unikatową skalę
Opcjonalnie określ przybliżoną liczbę unikatowych wartości, które może zapisywać agregacja. Domyślnie wartość tej opcji jest nieokreślona. Jeśli określono zarówno Count distinct scale (Liczba unikatowych wartości) jak i Count distinct keys (Liczba unikatowych kluczy), Count distinct keys (Liczba unikatowych kluczy) ma pierwszeństwo.
| Wartość | Description |
|---|---|
| Nieokreślony | Właściwość CountDistinctScale nie jest używana. |
| Low | Agregacja może zapisywać około 500 000 unikatowych wartości. |
| Średni | Agregacja może zapisywać około 5000 000 unikatowych wartości. |
| High | Agregacja może zapisywać więcej niż 25 000 000 unikatowych wartości. |
Zlicz unikatowe klucze
Opcjonalnie określ dokładną liczbę unikatowych wartości, które może zapisywać agregacja. Jeśli określono zarówno Count distinct scale, jak i Count distinct keys, Count distinct keys ma pierwszeństwo.
Współczynnik automatycznego rozszerzania
Użyj wartości z zakresu od 1 do 100, aby określić wartość procentową, za pomocą której można rozszerzyć pamięć podczas agregacji. Domyślnie wartość tej opcji to 25%.