Przekształcanie klucza zastępczego w przepływie danych mapowania
DOTYCZY: Azure Data Factory Azure Synapse Analytics
Napiwek
Wypróbuj usługę Data Factory w usłudze Microsoft Fabric — rozwiązanie analityczne typu all-in-one dla przedsiębiorstw. Usługa Microsoft Fabric obejmuje wszystko, od przenoszenia danych do nauki o danych, analizy w czasie rzeczywistym, analizy biznesowej i raportowania. Dowiedz się, jak bezpłatnie rozpocząć nową wersję próbną !
Przepływy danych są dostępne zarówno w usłudze Azure Data Factory, jak i w potokach usługi Azure Synapse. Ten artykuł dotyczy przepływów danych mapowania. Jeśli dopiero zaczynasz transformacje, zapoznaj się z artykułem wprowadzającym Przekształcanie danych przy użyciu przepływu danych mapowania.
Użyj przekształcenia klucza zastępczego, aby dodać przyrostową wartość klucza do każdego wiersza danych. Jest to przydatne podczas projektowania tabel wymiarów w modelu danych analitycznych schematu gwiazdy. W schemacie gwiazdy każdy element członkowski w tabelach wymiarów wymaga unikatowego klucza, który nie jest kluczem biznesowym.
Konfigurowanie
Kolumna klucza: nazwa wygenerowanej kolumny klucza zastępczego.
Wartość początkowa: najniższa wartość klucza, która zostanie wygenerowana.
Klucze przyrostowe z istniejących źródeł
Aby rozpocząć sekwencję od wartości, która istnieje w źródle, zalecamy użycie ujścia pamięci podręcznej w celu zapisania tej wartości i użycia przekształcenia kolumny pochodnej, aby dodać dwie wartości razem. Użyj buforowanego odnośnika, aby pobrać dane wyjściowe i dołączyć je do wygenerowanego klucza. Aby uzyskać więcej informacji, dowiedz się więcej o ujściach pamięci podręcznej i buforowanych odnośnikach.
Przyrost z istniejącej maksymalnej wartości
Aby zainicjować wartość klucza z poprzednią wartością maksymalną, istnieją dwie techniki, których można użyć na podstawie miejsca, w którym znajdują się dane źródłowe.
Źródła baz danych
Użyj opcji zapytania SQL, aby wybrać opcję MAX() ze źródła. Na przykład Select MAX(<surrogateKeyName>) as maxval from <sourceTable>
.
Źródła plików
Jeśli poprzednia maksymalna wartość znajduje się w pliku, użyj max()
funkcji w przekształceniu agregacji, aby uzyskać poprzednią maksymalną wartość:
W obu przypadkach należy zapisać w ujściu pamięci podręcznej i wyszukać wartość.
Skrypt przepływu danych
Składnia
<incomingStream>
keyGenerate(
output(<surrogateColumnName> as long),
startAt: <number>L
) ~> <surrogateKeyTransformationName>
Przykład
Skrypt przepływu danych dla powyższej konfiguracji klucza zastępczego znajduje się w poniższym fragmencie kodu.
AggregateDayStats
keyGenerate(
output(key as long),
startAt: 1L
) ~> SurrogateKey1
Powiązana zawartość
W tych przykładach użyto przekształceń sprzężenia i kolumny pochodnej.