Kopiowanie danych z i do magazynów danych ODBC przy użyciu usługi Azure Data Factory lub Synapse Analytics
DOTYCZY: Azure Data Factory Azure Synapse Analytics
Porada
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ą !
W tym artykule opisano sposób użycia działania kopiowania w usłudze Azure Data Factory do kopiowania danych z i do magazynu danych ODBC. Jest on oparty na artykule omówienie działania kopiowania, który przedstawia ogólne omówienie działania kopiowania.
Ten łącznik ODBC jest obsługiwany w przypadku następujących możliwości:
Obsługiwane możliwości | IR |
---|---|
działanie Kopiuj (źródło/ujście) | (2) |
Działanie Lookup | (2) |
(1) Środowisko Azure Integration Runtime (2) Self-hosted Integration Runtime
Aby uzyskać listę magazynów danych obsługiwanych jako źródła/ujścia, zobacz tabelę Obsługiwane magazyny danych.
W szczególności ten łącznik ODBC obsługuje kopiowanie danych z/do dowolnego magazynu danych zgodnego z ODBC przy użyciu uwierzytelniania podstawowego lub anonimowego . Wymagany jest 64-bitowy sterownik ODBC. W przypadku ujścia ODBC usługa obsługuje standard ODBC w wersji 2.0.
Aby użyć tego łącznika ODBC, należy wykonać następujące czynności:
- Skonfiguruj własne środowisko Integration Runtime. Aby uzyskać szczegółowe informacje, zobacz artykuł Self-hosted Integration Runtime (Self-hosted Integration Runtime ).
- Zainstaluj 64-bitowy sterownik ODBC dla magazynu danych na maszynie Integration Runtime.
Aby wykonać działanie Kopiuj za pomocą potoku, możesz użyć jednego z następujących narzędzi lub zestawów SDK:
- Narzędzie do kopiowania danych
- Witryna Azure Portal
- Zestaw SDK platformy .NET
- Zestaw SDK języka Python
- Azure PowerShell
- Interfejs API REST
- Szablon usługi Azure Resource Manager
Wykonaj poniższe kroki, aby utworzyć połączoną usługę z magazynem danych ODBC w interfejsie użytkownika witryny Azure Portal.
Przejdź do karty Zarządzanie w obszarze roboczym usługi Azure Data Factory lub Synapse i wybierz pozycję Połączone usługi, a następnie kliknij pozycję Nowy:
Wyszukaj pozycję ODBC i wybierz łącznik ODBC.
Skonfiguruj szczegóły usługi, przetestuj połączenie i utwórz nową połączoną usługę.
Poniższe sekcje zawierają szczegółowe informacje o właściwościach używanych do definiowania jednostek usługi Data Factory specyficznych dla łącznika ODBC.
Następujące właściwości są obsługiwane w przypadku połączonej usługi ODBC:
Właściwości | Opis | Wymagania |
---|---|---|
type | Właściwość type musi być ustawiona na: Odbc | Tak |
Parametry połączenia | Parametry połączenia z wyłączeniem części poświadczeń. Możesz określić parametry połączenia z wzorcem, na przykład Driver={SQL Server};Server=Server.database.windows.net; Database=TestDatabase; , lub użyć systemowej nazwy DSN (nazwy źródła danych) skonfigurowanej na maszynie DSN=<name of the DSN on IR machine>; Integration Runtime z (nadal musisz określić część poświadczeń w połączonej usłudze odpowiednio).Możesz również umieścić hasło w usłudze Azure Key Vault i ściągnąć password konfigurację z parametry połączenia. Aby uzyskać więcej informacji, zobacz Przechowywanie poświadczeń w usłudze Azure Key Vault . |
Tak |
authenticationType | Typ uwierzytelniania używanego do nawiązywania połączenia z magazynem danych ODBC. Dozwolone wartości to: Podstawowa i Anonimowa. |
Tak |
userName | Określ nazwę użytkownika, jeśli używasz uwierzytelniania podstawowego. | Nie. |
hasło | Określ hasło dla konta użytkownika określonego dla userName. Oznacz to pole jako element SecureString w celu bezpiecznego przechowywania go lub odwołuj się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. | Nie. |
poświadczenia | Część poświadczeń dostępu parametry połączenia określona w formacie właściwości-wartości specyficznej dla sterownika. Przykład: "RefreshToken=<secret refresh token>;" . Oznacz to pole jako ciąg SecureString. |
Nie. |
connectVia | Środowisko Integration Runtime do nawiązania połączenia z magazynem danych. Środowisko Integration Runtime (Self-hosted) jest wymagane zgodnie z wymaganiami wstępnymi. | Tak |
Przykład 1: używanie uwierzytelniania podstawowego
{
"name": "ODBCLinkedService",
"properties": {
"type": "Odbc",
"typeProperties": {
"connectionString": "<connection string>",
"authenticationType": "Basic",
"userName": "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Przykład 2: używanie uwierzytelniania anonimowego
{
"name": "ODBCLinkedService",
"properties": {
"type": "Odbc",
"typeProperties": {
"connectionString": "<connection string>",
"authenticationType": "Anonymous",
"credential": {
"type": "SecureString",
"value": "RefreshToken=<secret refresh token>;"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Pełna lista sekcji i właściwości dostępnych do definiowania zestawów danych znajduje się w artykule dotyczącym zestawów danych. Ta sekcja zawiera listę właściwości obsługiwanych przez zestaw danych ODBC.
Aby skopiować dane z/do magazynu danych zgodnego z odBC, obsługiwane są następujące właściwości:
Właściwości | Opis | Wymagania |
---|---|---|
type | Właściwość type zestawu danych musi być ustawiona na: OdbcTable | Tak |
tableName | Nazwa tabeli w magazynie danych ODBC. | Nie dla źródła (jeśli określono "zapytanie" w źródle działania); Tak dla ujścia |
Przykład
{
"name": "ODBCDataset",
"properties": {
"type": "OdbcTable",
"schema": [],
"linkedServiceName": {
"referenceName": "<ODBC linked service name>",
"type": "LinkedServiceReference"
},
"typeProperties": {
"tableName": "<table name>"
}
}
}
Jeśli używasz RelationalTable
wpisanego zestawu danych, nadal jest on obsługiwany w stanie rzeczywistym, podczas gdy zaleca się korzystanie z nowego zestawu danych w przyszłości.
Aby uzyskać pełną listę sekcji i właściwości dostępnych do definiowania działań, zobacz artykuł Pipelines (Potoki ). Ta sekcja zawiera listę właściwości obsługiwanych przez źródło ODBC.
Aby skopiować dane z magazynu danych zgodnego z odBC, w sekcji źródła działania kopiowania są obsługiwane następujące właściwości:
Właściwości | Opis | Wymagania |
---|---|---|
type | Właściwość type źródła działania kopiowania musi być ustawiona na: OdbcSource | Tak |
zapytanie | Użyj niestandardowego zapytania SQL, aby odczytać dane. Na przykład: "SELECT * FROM MyTable" . |
Nie (jeśli określono "tableName" w zestawie danych) |
Przykład:
"activities":[
{
"name": "CopyFromODBC",
"type": "Copy",
"inputs": [
{
"referenceName": "<ODBC input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "OdbcSource",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Jeśli używasz RelationalSource
wpisanego źródła, nadal jest obsługiwana w taki sposób, jak jest, podczas gdy sugerowane jest użycie nowego źródła w przyszłości.
Aby skopiować dane do magazynu danych zgodnego z odBC, ustaw typ ujścia w działaniu kopiowania na OdbcSink. Następujące właściwości są obsługiwane w sekcji ujścia działania kopiowania:
Właściwości | Opis | Wymagania |
---|---|---|
type | Właściwość type ujścia działania kopiowania musi być ustawiona na: OdbcSink | Tak |
writeBatchTimeout | Czas oczekiwania na ukończenie operacji wstawiania wsadowego przed przekroczeniem limitu czasu. Dozwolone wartości to: przedział czasu. Przykład: "00:30:00" (30 minut). |
Nie. |
writeBatchSize | Wstawia dane do tabeli SQL, gdy rozmiar buforu osiągnie wartość writeBatchSize. Dozwolone wartości to: liczba całkowita (liczba wierszy). |
Nie (wartość domyślna to 0 — automatycznie wykryta) |
preCopyScript | Określ zapytanie SQL dla działania kopiowania do wykonania przed zapisaniem danych w magazynie danych w każdym przebiegu. Za pomocą tej właściwości można wyczyścić wstępnie załadowane dane. | Nie. |
Uwaga
W przypadku polecenia "writeBatchSize", jeśli nie jest ustawiona (wykryta automatycznie), działanie kopiowania najpierw wykrywa, czy sterownik obsługuje operacje wsadowe, i ustaw go na 10000, jeśli tak, lub ustaw go na 1, jeśli nie. Jeśli jawnie ustawisz wartość inną niż 0, działanie kopiowania uwzględnia wartość i kończy się niepowodzeniem w czasie wykonywania, jeśli sterownik nie obsługuje operacji wsadowych.
Przykład:
"activities":[
{
"name": "CopyToODBC",
"type": "Copy",
"inputs": [
{
"referenceName": "<input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<ODBC output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "<source type>"
},
"sink": {
"type": "OdbcSink",
"writeBatchSize": 100000
}
}
}
]
Aby dowiedzieć się więcej o właściwościach, sprawdź działanie Wyszukiwania.
Aby rozwiązać problemy z połączeniem, użyj karty Diagnostyka programu Integration Runtime Configuration Manager.
- Uruchom program Integration Runtime Configuration Manager.
- Przejdź do karty Diagnostyka.
- W sekcji "Testuj połączenie" wybierz typ magazynu danych (połączona usługa).
- Określ parametry połączenia używany do łączenia się z magazynem danych, wybierz uwierzytelnianie i wprowadź nazwę użytkownika, hasło i/lub poświadczenia.
- Kliknij pozycję Testuj połączenie , aby przetestować połączenie z magazynem danych.
Aby uzyskać listę magazynów danych obsługiwanych jako źródła i ujścia działania kopiowania, zobacz obsługiwane magazyny danych.