Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
DOTYCZY:
Azure Data Factory
Azure Synapse Analytics
Wskazówka
Data Factory w usłudze Microsoft Fabric jest następną generacją Azure Data Factory z prostszą architekturą, wbudowaną sztuczną inteligencją i nowymi funkcjami. Jeśli dopiero zaczynasz integrować dane, zacznij od Fabric Data Factory. Istniejące obciążenia związane z ADF można uaktualnić do Fabric, aby uzyskać dostęp do nowych funkcji w dziedzinie nauki o danych, analizach w czasie rzeczywistym i raportowaniu.
Podczas przenoszenia danych ze źródłowego do magazynu docelowego działanie kopiowania umożliwia przeprowadzenie dalszej weryfikacji spójności danych, aby upewnić się, że dane nie tylko zostały pomyślnie skopiowane ze źródła do magazynu docelowego, ale także zweryfikowane, aby były spójne między magazynem źródłowym i docelowym. Po znalezieniu niespójnych plików podczas przenoszenia danych można przerwać działanie kopiowania lub kontynuować kopiowanie reszty, włączając ustawienie odporności na uszkodzenia, aby pominąć niespójne pliki. Nazwy pominiętych plików można uzyskać, włączając ustawienie dziennika sesji w działaniu kopiowania. Aby uzyskać więcej szczegółów, możesz odwołać się do dziennika sesji dotyczącego aktywności kopiowania.
Obsługiwane magazyny danych i scenariusze
- Weryfikacja spójności danych jest obsługiwana przez wszystkie łączniki z wyjątkiem ftp, SFTP, HTTP, Snowflake, Office 365 i Azure Databricks Delta Lake.
- Weryfikacja spójności danych nie jest obsługiwana w scenariuszu przejściowym kopiowania.
- Podczas kopiowania plików binarnych weryfikacja spójności danych jest dostępna tylko wtedy, gdy zachowanie "PreserveHierarchy" jest ustawione w działaniu kopiowania.
- Podczas kopiowania wielu plików binarnych w jednym działaniu kopiowania z włączoną weryfikacją spójności danych możesz przerwać działanie kopiowania lub kontynuować kopiowanie reszty, włączając ustawienie odporności na uszkodzenia, aby pominąć niespójne pliki.
- Podczas kopiowania tabeli w działaniu pojedynczej kopii z włączoną weryfikacją spójności danych działanie kopiowania kończy się niepowodzeniem, jeśli liczba wierszy odczytanych ze źródła różni się od liczby wierszy skopiowanych do miejsca docelowego oraz liczby niezgodnych wierszy, które zostały pominięte.
Konfigurowanie
W poniższym przykładzie przedstawiono definicję JSON umożliwiającą weryfikację spójności danych w działaniu kopiowania:
{
"name":"CopyActivityDataConsistency",
"type":"Copy",
"typeProperties": {
"source": {
"type": "BinarySource",
"storeSettings": {
"type": "AzureDataLakeStoreReadSettings",
"recursive": true
}
},
"sink": {
"type": "BinarySink",
"storeSettings": {
"type": "AzureDataLakeStoreWriteSettings"
}
},
"validateDataConsistency": true,
"skipErrorFile": {
"dataInconsistency": true
},
"logSettings": {
"enableCopyActivityLog": true,
"copyActivityLogSettings": {
"logLevel": "Warning",
"enableReliableLogging": false
},
"logLocationSettings": {
"linkedServiceName": {
"referenceName": "ADLSGen2",
"type": "LinkedServiceReference"
},
"path": "sessionlog/"
}
}
}
| Właściwości | opis | Dozwolone wartości | Wymagane |
|---|---|---|---|
| sprawdźSpójnośćDanych | Jeśli dla tej właściwości ustawiono wartość true, podczas kopiowania plików binarnych aktywność kopiowania sprawdzi rozmiar pliku, datę ostatniej modyfikacji i sumę kontrolną dla każdego pliku binarnego skopiowanego ze źródła do magazynu docelowego, aby zapewnić spójność danych między magazynem źródłowym a docelowym. Podczas kopiowania danych tabelarycznych działanie kopiowania sprawdzi łączną liczbę wierszy po zakończeniu zadania, zapewniając, że łączna liczba wierszy odczytanych ze źródła jest taka sama jak liczba wierszy skopiowanych do miejsca docelowego oraz liczba pominiętych wierszy niezgodnych. Należy pamiętać, że wydajność kopiowania ma wpływ na włączenie tej opcji. | Prawda Fałsz (domyślnie) |
Nie. |
| niezgodność danych | Jedna z par klucz-wartość w worku właściwości skipErrorFile, aby określić, czy chcesz pominąć niespójne pliki. -True: chcesz skopiować resztę, pomijając niespójne pliki. - Fałsz: chcesz przerwać działanie kopiowania po znalezieniu niespójnego pliku. Należy pamiętać, że ta właściwość jest prawidłowa tylko w przypadku kopiowania plików binarnych i ustawiania wartości validateDataConsistency jako True. |
Prawda Fałsz (domyślnie) |
Nie. |
| ustawienia logowania | Grupa właściwości, które można określić, aby umożliwić dziennikowi sesji rejestrowanie pominiętych plików. | Nie. | |
| linkedServiceName | Połączona usługa Azure Blob Storage lub Azure Data Lake Storage Gen2 do przechowywania plików dziennika sesji. | Nazwy usługi połączonego typu AzureBlobStorage lub AzureBlobFS, które odwołują się do instancji używanej do przechowywania plików dziennika. |
Nie. |
| ścieżka | Ścieżka plików dziennika. | Określ ścieżkę do przechowywania plików dziennika. Jeśli nie podasz ścieżki, usługa utworzy kontener. | Nie. |
Uwaga
- Podczas kopiowania plików binarnych z lub do Azure Blob lub Azure Data Lake Storage Gen2, usługa wykonuje weryfikację sumy kontrolnej na poziomie bloku, korzystając z interfejsu API Azure Blob i interfejsu API Azure Data Lake Storage Gen2. Jeśli ContentMD5 na plikach istnieje w Azure Blob lub Azure Data Lake Storage Gen2 jako źródła danych, usługa wykonuje weryfikację sumy kontrolnej na poziomie pliku również po odczytaniu plików. Po skopiowaniu plików do obiektu Blob Azure lub Azure Data Lake Storage Gen2 jako miejsca docelowego danych, usługa zapisuje ContentMD5 do obiektu Blob Azure lub Azure Data Lake Storage Gen2, co może być następnie wykorzystane przez aplikacje podrzędne do weryfikacji spójności danych.
- Usługa realizuje weryfikację rozmiaru pliku podczas kopiowania plików binarnych między dowolnymi magazynami danych.
Monitorowanie
Dane wyjściowe z działania kopiowania
Po całkowitym uruchomieniu działania kopiowania można zobaczyć wynik weryfikacji spójności danych z danych wyjściowych każdego uruchomienia działania kopiowania:
"output": {
"dataRead": 695,
"dataWritten": 186,
"filesRead": 3,
"filesWritten": 1,
"filesSkipped": 2,
"throughput": 297,
"logFilePath": "myfolder/a84bf8d4-233f-4216-8cb5-45962831cd1b/",
"dataConsistencyVerification":
{
"VerificationResult": "Verified",
"InconsistentData": "Skipped"
}
}
Można zobaczyć szczegóły dotyczące weryfikacji spójności danych z "dataConsistencyVerification property".
Wartość elementu VerificationResult:
- Zweryfikowano: skopiowane dane zostały zweryfikowane tak, aby były spójne między magazynem źródłowym i docelowym.
- Niezatwierdzone: Twoje skopiowane dane nie zostały zweryfikowane pod kątem spójności, ponieważ nie włączono validateDataConsistency w działaniu kopiowania.
- Nieobsługiwane: skopiowane dane nie zostały zweryfikowane tak, aby były spójne, ponieważ weryfikacja spójności danych nie jest obsługiwana dla tej konkretnej pary kopiowania.
Wartość niespójnych danych:
- Znaleziono: Operacja kopiowania wykryła niespójne dane.
- Pominięto: proces kopiowania znalazł i pominął niespójne dane.
- Brak: Działanie kopiowania nie znalazło żadnych niespójnych danych. Może to być spowodowane tym, że dane zostały zweryfikowane tak, aby były spójne między magazynem źródłowym i docelowym lub dlatego, że wyłączono funkcję validateDataConsistency w działaniu kopiowania.
Dziennik sesji z operacji kopiowania
Jeśli skonfigurujesz rejestrowanie niespójnego pliku, możesz znaleźć plik dziennika z tej ścieżki: https://[your-blob-account].blob.core.windows.net/[path-if-configured]/copyactivity-logs/[copy-activity-name]/[copy-activity-run-id]/[auto-generated-GUID].csv. Pliki dziennika to pliki csv.
Schemat pliku dziennika jest następujący:
| Kolumna | opis |
|---|---|
| Sygnatura czasowa | Czas znacznika, kiedy usługa pomija niespójne pliki. |
| Poziom | Poziom logowania tego elementu. Znajduje się na poziomie "Ostrzeżenia" dla elementu, który wskazuje na pomijanie pliku. |
| NazwaOperacji | Zachowanie operacyjne przy kopiowaniu każdego pliku. Jest to "FileSkip", aby określić plik, który ma zostać pominięty. |
| OperationItem | Nazwa pliku, która ma zostać pominięta. |
| Komunikat | Więcej informacji ilustrujących, dlaczego pliki są pomijane. |
Przykład pliku dziennika jest następujący:
Timestamp, Level, OperationName, OperationItem, Message
2020-02-26 06:22:56.3190846, Warning, FileSkip, "sample1.csv", "File is skipped after read 548000000 bytes: ErrorCode=DataConsistencySourceDataChanged,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Source file 'sample1.csv' is changed by other clients during the copy activity run.,Source=,'."
W powyższym pliku dziennika widać, że został pominięty plik sample1.csv, ponieważ nie został zweryfikowany jako spójny między sklepem źródłowym i docelowym. Możesz uzyskać więcej informacji o tym, dlaczego sample1.csv staje się niespójny. Dzieje się tak, ponieważ inne aplikacje zmieniały dane w trakcie wykonywania działania kopiowania.
Powiązana zawartość
Zobacz inne artykuły dotyczące działania kopiowania: