Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
GÄLLER FÖR:
Azure Data Factory
Azure Synapse Analytics
Tips
Data Factory i Microsoft Fabric är nästa generations Azure Data Factory, med en enklare arkitektur, inbyggd AI och nya funktioner. Om dataintegrering är nytt för dig börjar du med Fabric Data Factory. Befintliga ADF-arbetsbelastningar kan uppgraderas till Fabric för att få åtkomst till nya funktioner inom datavetenskap, realtidsanalys och rapportering.
Den här artikeln innehåller förslag på hur du felsöker vanliga problem med resursen för insamling av ändringsdata i Azure Data Factory.
Problem: Problem med att aktivera inbyggd CDC i min SQL-källa.
För källor i SQL är två uppsättningar tabeller tillgängliga: tabeller med inbyggd SQL CDC aktiverad och tabeller med tidsbaserade inkrementella kolumner.
Följ de här stegen för att konfigurera intern CDC för en specifik källtabell i sql-databasen.
Tänk på att du har följande tabell med ID som primärnyckel. Om det finns en primärnyckel i schemat är supports_net_changes inställd på true som standard. Om inte konfigurerar du det med hjälp av skriptet i Fråga 3.
Fråga 1
CREATE TABLE Persons (
ID int,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
Last_login DATETIME,
PRIMARY KEY (ID));
Kommentar
För närvarande läser ADF CDC-resursen endast in nettoändringar för infognings-, uppdaterings- och borttagningsåtgärder.
Kör följande fråga för att aktivera CDC på databasnivå:
Fråga 2
EXEC sys.sp_cdc_enable_db
Kör följande fråga för att aktivera CDC på tabellnivå:
Fråga 3
EXEC sys.sp_cdc_enable_table
@source_schema = N'dbo'
, @source_name = N'Persons'
, @role_name = N'cdc_admin'
, @supports_net_changes = 1
, @captured_column_list = N'ID';
Problem: Tabeller är inte tillgängliga att välja i CDC-resurskonfigurationsprocessen.
Om DIN SQL-källa inte har SQL Server CDC med net_changed aktiverad eller inte har några tidsbaserade inkrementella kolumner är tabellerna i källan inte tillgängliga för val.
Problem: Felsökningsklustret är inte tillgängligt från en varm pool.
Felsökningsklustret är inte tillgängligt från en varm pool. Det kommer att finnas en väntetid i storleksordningen 1+ minuter.
Problem: Problem med att spåra borttagningsåtgärder.
För närvarande stöder CDC-resurs borttagningsåtgärder för följande mottagartyper – Azure SQL Database & Delta. För att uppnå detta på kolumnmappningssidan väljer du den kolumn för nycklar som kan användas för att avgöra om en rad från källan matchar en rad från mottagaren.
Problem: Min CDC-resurs misslyckas när SQL-måltabellen har identitetskolumner.
Följande fel uppstår vid körning av en CDC när målmottagaretabellen har identitetskolumner,
Det går inte att infoga explicit värde för identitetskolumnen i tabellen "TableName" när IDENTITY_INSERT är inställt på OFF.
Kör följande fråga för att avgöra om du har en identitetskolumn i ditt SQL-baserade mål.
Fråga 4
SELECT *
FROM sys.identity_columns
WHERE OBJECT_NAME(object_id) = 'TableName'
Du kan lösa problemet genom att följa något av följande steg:
- Ange IDENTITY_INSERT till PÅ genom att köra följande fråga på databasnivå och köra CDC Mapper igen
Fråga 5
SET IDENTITY_INSERT dbo.TableName ON;
(Eller)
- Användaren kan ta bort den specifika identitetskolumnen från mappningen när infogningar utförs.
Problem: Problem med att använda lokalt installerad integrationskörning.
För närvarande stöds inte lokalt installerad integrationskörning i CDC-resursen. Om du försöker ansluta till en lokal källa använder du Azure integreringskörning med hanterat virtuellt nätverk.