Zaawansowane opcje konfiguracji w Azure Synapse Link
Azure Synapse Link oferuje wiele możliwości zapisu i odczytu danych w celu dopasowania do różnych scenariuszy analitycznych. W zależności od scenariusza analitycznego można wybrać określoną konfigurację spośród poniższych opcji.
Scenariusz | Dotyczy | Dostępne opcje konfiguracji |
---|---|---|
Raportowanie operacyjne | Tabele Dataverse, tabele finansowe i operacyjne oraz encje | Synapse Analytics z opcją Delta lake zapewnia lepsze czasy odpowiedzi na zapytania, szczególnie w przypadku zapytań dotyczących dużych ilości danych. Więcej informacji: Synapse Link z opcją Delta lake |
Raportowanie operacyjne | Tylko tabele Dataverse | Synapse Link z opcją konfiguracji „In place update” zapewnia pliki CSV w jeziorze danych, które są aktualizowane niemal w czasie rzeczywistym Jest to starsza opcja dostępna dla tabel Dataverse. Ta opcja nie jest obsługiwana dla tabel z aplikacji finansowych i operacyjnych |
Integracja danych | Tabele Dataverse, tabele finansowe i operacyjne oraz encje | "Tylko dołączanie zapewnia pliki CSV zawierające dane przyrostowe. Można tworzyć potoki, które wykorzystują dane przyrostowe i wypełniają systemy niższego szczebla Funkcja partycjonowania danych określona przez użytkownika umożliwia wybór niestandardowej strategii partycjonowania danych specjalnie dla tabel Dataverse. Dane tabeli finansowej i operacyjnej są partycjonowane przez system w oparciu o odpowiednią strategię partycjonowania. Ta opcja nie jest dostępna dla aplikacji finansowych i operacyjnych |
Uwaga
Azure Synapse Link for Dataverse, wcześniej znane jako eksportowanie do data lake. Nazwa usługi została zmieniona w maja 2021 r. i nadal będzie eksportować dane do Azure Data Lake Storage oraz Azure Synapse Analytics. Od września 2023 r. usługa Azure Synapse Link umożliwia również wybieranie danych z aplikacji finansowych i operacyjnych Dynamics 365. Nie wszystkie wzorce integracji są obsługiwane przez aplikacje finansowe i operacyjne. Aby uzyskać wskazówki dotyczące przejścia z eksportu do funkcji data lake w aplikacjach finansowych i operacyjnych do Synapse Link, przejdź do Przewodnika przejścia.
W tym artykule omówiono zaawansowane ustawienia konfiguracyjne dostępne dla tabel Dataverse. Opcje te nie są dostępne dla aplikacji finansowych i operacyjnych.
- Aktualizacje na miejscu vs. zapisywanie dodatkowe.
- Partycjonowanie danych określone przez użytkownika.
Aktualizacje na miejscu vs. zapisywanie dodatkowe
Podczas zapisywania danych tabeli Dataverse w Azure data lake, w oparciu o wartość createdOn
, która to jest datą i czasem utworzenia rekordu, istnieją dwie możliwości ustawień. Te opcje to Aktualizacja zamiast oraz Tylko dodanie.
Ustawieniem domyślnym (w przypadku tabel, w których wartość createdOn
jest dostępna) jest wprowadzenie aktualizacji lub upsert (update/insert) danych przyrostowych w miejscu docelowym. Jeśli zmiana jest nowa i odpowiedni wiersz nie istnieje w jeziorze, w przypadku tworzenia pliki docelowe są skanowane, a zmiany są wstawiane do odpowiedniej partycji plików w jeziorze. Jeśli zmiana zostanie zaktualizowana i w pliku dziennika istnieje wiersz, odpowiedni plik w data lake zostanie zaktualizowany, a nie wstawiony, wraz z danymi przyrostowymi. Innymi słowy, domyślnym ustawieniem wszystkich zmian CUD (tworzenie, aktualizowanie, usuwanie) w tabelach Dataverse, gdy jest dostępna wartość createdOn
, jest zaktualizowanie danych docelowych w danych Azure data lake.
Domyślne zachowanie aktualizacji można zmienić, korzystając z opcjonalnego ustawienia o nazwie Tylko dodanie. W trybie Tylko dodanie, w przeciwieństwie do zachowania w Aktualizacja zamiast, dane z tabel Dataverse są dołączane do odpowiednich partycji plików w systemie. Jest to ustawienie dotyczące konkretnej tabeli i dostępne jako pole wyboru w obszarze Zaawansowane>Pokaż zaawansowane ustawienia konfiguracji. W przypadku tabel Dataverse z włączoną opcją Tylko dodawanie wszystkie zmiany CUD są w sposób odpowiedni dołączane do odpowiednich plików docelowych w data lake. Po wybraniu tej opcji strategia partycji jest domyślnie wybierana jako Rok, a gdy dane są zapisywane w usłudze Data Lake, są one dzielone na partycje w ujęciu rocznym. Tylko dołączanie jest również ustawieniem domyślnym dla tabel Dataverse, które nie mają wartości createdOn
.
W poniższej tabeli opisano sposób obsługi wierszy w tle zdarzeń CUD dla poszczególnych opcji zapisu danych.
Wydarzenie | Aktualizacja zamiast | Tylko dołączanie |
---|---|---|
Utworzenie | Wiersz zostanie wstawiony do pliku partycji i jest oparty na wartości createdOn w wierszu. |
Wiersz jest dodawany na końcu pliku partycji i jest oparty na wartości createdOn rekordu. |
Zaktualizuj | Jeśli wiersz istnieje w pliku partycji, jest zastępowany lub aktualizowany zaktualizowanymi danymi. Jeśli nie istnieje, zostanie wstawiony do pliku. | Wiersz, wraz ze zaktualizowaną wersją, jest dodawany na końcu pliku partycji. |
Delete | Jeśli wiersz istnieje w pliku partycji, jest usuwany z pliku. | Wiersz, wraz ze zaktualizowaną wersją, jest dodawany na końcu pliku partycji z dopiskiem IsDelete column = True . |
Uwaga
W przypadku tabel Dataverse, w których włączono opcję tylko dodawanie, usunięcie wiersza źródłowego nie powoduje usunięcia wiersza w data lake. Zamiast tego usunięty wiersz jest dołączany jako nowy wiersz w data lake a kolumna isDeleted
jest ustawiona na wartość True (Prawda).
Odczyt (ALLOW_INCONSISTENT_READS) dla bezserwerowego jest włączony tylko w trybie dołączania. ALLOW_INCONSISTENT_READS oznacza, że użytkownik może odczytywać pliki, które można stale modyfikować, gdy jest uruchomione zapytanie SELECT
. Wyniki będą spójne i odpowiadające odczytom migawki pliku. (Nie jest odpowiednikiem izolacji migawki bazy danych z powodu innego czasu generowania migawki).
Nie wszystkie zmiany CUD zostaną przechwycone w tylko w dołączaniu: Łącze Synapse Link przetwarza zmiany danych w grupach lub „partiach” przed opublikowaniem ich w danych data lake. W rezultacie, jeśli użytkownik w krótkim odstępie czasu wprowadzi zmiany, nie wszystkie zmiany CUD zostaną zarejestrowane w danych data lake.
Oto więcej szczegółów na temat tego, kiedy użyć którejkolwiek z opcji.
- Aktualizacja po raz pierwszy: Ta opcja jest ustawieniem domyślnym i zalecana tylko wtedy, gdy chcesz połączyć się bezpośrednio z danymi w jeziorze i potrzebujesz bieżącego stanu (nie historii lub zmian przyrostowych). Plik zawiera pełny zestaw danych i może być wykorzystywany za pośrednictwem Power BI lub przez kopiowanie całego zestawu danych dla potoków ETL (wyodrębnianie, transfer, ładowanie).
- Tylko dodawanie: wybierz tę opcję, jeśli nie łączysz się bezpośrednio z danymi w źródle i chcesz stopniowo skopiować dane do innego celu przy użyciu potoków ETL. Ta opcja zawiera historię zmian umożliwiających włączanie scenariuszy AI i ML.
W celu dostosowania strategii partycji danych można przełączać ustawienia Pokaż zaawansowane konfiguracje w obszarze Zaawansowane w Azure Synapse Link for Dataverse i wybrać opcje zapisu danych Azure data lake.
Partycjonowanie danych
Kiedy zapisujesz dane tabel Dataverse do magazynu Azure Data Lake storage za pomocą Azure Synapse Link, tabele są partycjonowane (zamiast do pojedynczego pliku) w data lake na podstawie wartości createdOn
każdego wiersza w źródle. Domyślna strategia partycji jest według miesiąca, a dane są partycjonowane w usłudze Azure Data Lake co miesiąc.
Na podstawie objętości tabeli Dataverse i rozkładu danych można podzielić dane na partycje według roku. Dzięki tej opcji, gdy dane tabeli Dataverse są zapisywane w Azure data lake, będą partycjonowane co roku na podstawie wartości createdOn
każdego wiersza w źródle. W przypadku tabel bez kolumny createdOn
wiersze danych są podzielone na nowy plik co 5 000 000 rekordów. Jest to ustawienie dotyczące konkretnej tabeli i dostępne jako pole wyboru w obszarze Zaawansowane>Pokaż zaawansowane ustawienia konfiguracji.
Więcej szczegółów z przykładami obsługi danych w jeziorze z roczną lub miesięczną strategią podziału: