Udostępnij za pośrednictwem


Kopiowanie danych z bazy danych MariaDB przy użyciu usługi Azure Data Factory lub Synapse Analytics

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ą !

W tym artykule opisano sposób używania działania kopiowania w potoku usługi Azure Data Factory lub Synapse Analytics do kopiowania danych z bazy danych MariaDB. Jest on oparty na artykule omówienie działania kopiowania, który przedstawia ogólne omówienie działania kopiowania.

Ważne

Łącznik MariaDB korzystający z zalecanej wersji sterownika zapewnia ulepszoną natywną obsługę bazy danych MariaDB. Jeśli używasz łącznika ze starszą wersją sterownika, uaktualnij go przed 31 października 2024 r. Zapoznaj się z tą sekcją , aby uzyskać szczegółowe informacje na temat różnicy między starszą i zalecaną wersją.

Obsługiwane możliwości

Ten łącznik MariaDB jest obsługiwany w przypadku następujących możliwości:

Obsługiwane możliwości IR
działanie Kopiuj (źródło/-) (1) (2)
Działanie Lookup (1) (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 przez działanie kopiowania, zobacz tabelę Obsługiwane magazyny danych.

Usługa udostępnia wbudowany sterownik umożliwiający łączność, dlatego nie trzeba ręcznie instalować żadnego sterownika przy użyciu tego łącznika.

Ten łącznik obsługuje obecnie bazę danych MariaDB w wersji 10.x, 11.x w ramach zalecanej nowej wersji sterownika w wersji 2 i od 10.0 do 10.5 dla starszej wersji sterownika.

Wymagania wstępne

Jeśli magazyn danych znajduje się wewnątrz sieci lokalnej, sieci wirtualnej platformy Azure lub chmury prywatnej Amazon Virtual, musisz skonfigurować własne środowisko Integration Runtime , aby się z nim połączyć.

Jeśli magazyn danych jest zarządzaną usługą danych w chmurze, możesz użyć środowiska Azure Integration Runtime. Jeśli dostęp jest ograniczony do adresów IP zatwierdzonych w regułach zapory, możesz dodać adresy IP środowiska Azure Integration Runtime do listy dozwolonych.

Możesz również użyć funkcji środowiska Integration Runtime zarządzanej sieci wirtualnej w usłudze Azure Data Factory, aby uzyskać dostęp do sieci lokalnej bez instalowania i konfigurowania własnego środowiska Integration Runtime.

Aby uzyskać więcej informacji na temat mechanizmów zabezpieczeń sieci i opcji obsługiwanych przez usługę Data Factory, zobacz Strategie dostępu do danych.

Wprowadzenie

Aby wykonać działanie Kopiuj za pomocą potoku, możesz użyć jednego z następujących narzędzi lub zestawów SDK:

Tworzenie połączonej usługi z bazą danych MariaDB przy użyciu interfejsu użytkownika

Wykonaj poniższe kroki, aby utworzyć połączoną usługę z bazą danych MariaDB w interfejsie użytkownika witryny Azure Portal.

  1. 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:

  2. Wyszukaj pozycję Maria i wybierz łącznik MariaDB.

    Zrzut ekranu przedstawiający łącznik MariaDB.

  3. Skonfiguruj szczegóły usługi, przetestuj połączenie i utwórz nową połączoną usługę.

    Zrzut ekranu przedstawiający połączoną konfigurację usługi dla bazy danych MariaDB.

Szczegóły konfiguracji łącznika

Poniższe sekcje zawierają szczegółowe informacje o właściwościach używanych do definiowania jednostek usługi Data Factory specyficznych dla łącznika MariaDB.

Właściwości połączonej usługi

Jeśli używasz zalecanej wersji sterownika, następujące właściwości są obsługiwane dla połączonej usługi MariaDB:

Właściwości Opis Wymagania
type Właściwość type musi być ustawiona na: MariaDB Tak
driverVersion Wersja sterownika po wybraniu zalecanej wersji sterownika. Wartość to v2. Tak
serwer Nazwa serwera MariaDB. Tak
port Numer portu do nawiązania połączenia z serwerem MariaDB. Nie.
database Nazwa bazy danych MariaDB. Tak
nazwa użytkownika Nazwa użytkownika. Tak
hasło Hasło dla nazwy użytkownika. Oznacz to pole jako SecureString, aby bezpiecznie je przechowywać. Możesz też odwołać się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. Tak
sslMode Ta opcja określa, czy sterownik używa szyfrowania TLS i weryfikacji podczas nawiązywania połączenia z bazą danych MariaDB. Np. SSLMode=<0/1/2/3/4>.
Opcje: WYŁĄCZONE (0) / PREFEROWANE (1) / WYMAGANE (2) / VERIFY_CA (3) / VERIFY_IDENTITY (4) (ustawienie domyślne)
Tak
useSystemTrustStore Ta opcja określa, czy używać certyfikatu urzędu certyfikacji z magazynu zaufania systemu, czy z określonego pliku PEM. Np. UseSystemTrustStore=<0/1>;
Opcje: Włączone (1) / Wyłączone (0) (ustawienie domyślne)
Nie.
connectVia Środowisko Integration Runtime do nawiązania połączenia z magazynem danych. Dowiedz się więcej w sekcji Wymagania wstępne . Jeśli nie zostanie określony, używa domyślnego środowiska Azure Integration Runtime. Nie.

Przykład:

{
    "name": "MariaDBLinkedService",
    "properties": {
        "type": "MariaDB",
        "typeProperties": {
            "server": "<server>",
            "port": "<port>",
            "database": "<database>",
            "username": "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            },
            "driverVersion": "v2",
            "sslMode": <sslmode>,
            "useSystemTrustStore": <UseSystemTrustStore>
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Przykład: przechowywanie hasła w usłudze Azure Key Vault

{
    "name": "MariaDBLinkedService",
    "properties": {
        "type": "MariaDB",
        "typeProperties": {
            "server": "<server>",
            "port": "<port>",
            "database": "<database>",
            "username": "<username>",
            "password": {
                "type": "AzureKeyVaultSecret",
                "store": {
                    "referenceName": "<Azure Key Vault linked service name>",
                    "type": "LinkedServiceReference"
                },
                "secretName": "<secretName>"
            },
            "driverVersion": "v2",
            "sslMode": <sslmode>,
            "useSystemTrustStore": <UseSystemTrustStore>
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Jeśli używasz starszej wersji sterownika, obsługiwane są następujące właściwości:

Właściwości Opis Wymagania
type Właściwość type musi być ustawiona na: MariaDB Tak
Parametry połączenia Parametry połączenia ODBC do nawiązania połączenia z bazą danych MariaDB.
Możesz również umieścić hasło w usłudze Azure Key Vault i ściągnąć konfigurację pwd z parametry połączenia. Zapoznaj się z poniższymi przykładami i artykułem Store credentials in Azure Key Vault (Przechowywanie poświadczeń w usłudze Azure Key Vault ), aby uzyskać więcej szczegółów.
Tak
connectVia Środowisko Integration Runtime do nawiązania połączenia z magazynem danych. Dowiedz się więcej w sekcji Wymagania wstępne . Jeśli nie zostanie określony, używa domyślnego środowiska Azure Integration Runtime. Nie.

Przykład:

{
    "name": "MariaDBLinkedService",
    "properties": {
        "type": "MariaDB",
        "typeProperties": {
            "connectionString": "Server=<host>;Port=<port>;Database=<database>;UID=<user name>;PWD=<password>"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Właściwości zestawu danych

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 MariaDB.

Aby skopiować dane z bazy danych MariaDB, ustaw właściwość type zestawu danych na Wartość MariaDBTable. W tym typie zestawu danych nie ma dodatkowej właściwości specyficznej dla typu.

Przykład

{
    "name": "MariaDBDataset",
    "properties": {
        "type": "MariaDBTable",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<MariaDB linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Właściwości działania kopiowania

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 mariaDB.

MariaDB jako źródło

Aby skopiować dane z bazy danych MariaDB, ustaw typ źródła w działaniu kopiowania na MariaDBSource. Następujące właściwości są obsługiwane w sekcji źródło działania kopiowania:

Właściwości Opis Wymagania
type Właściwość type źródła działania kopiowania musi być ustawiona na: MariaDBSource 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": "CopyFromMariaDB",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<MariaDB input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "MariaDBSource",
                "query": "SELECT * FROM MyTable"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Mapowanie typu danych dla bazy danych MariaDB

Podczas kopiowania danych z bazy danych MariaDB następujące mapowania są używane z typów danych MariaDB do tymczasowych typów danych używanych przez usługę wewnętrznie. Zobacz Mapowania schematu i typu danych, aby dowiedzieć się, jak działanie kopiowania mapuje schemat źródłowy i typ danych na ujście.

Typ danych MariaDB Typ danych usługi tymczasowej Typ danych usługi tymczasowej (dla starszej wersji sterownika)
bigint Int64 Int64
bigint unsigned Decimal Decimal
bit(1) UInt64 Boolean
bit(M), M>1 UInt64 Byte[]
blob Byte[] Byte[]
bool Boolean
(Jeśli TreatTinyAsBoolean=false, jest mapowany jako SByte. TreatTinyAsBoolean ma wartość true domyślnie )
Int16
char String String
date Datetime Datetime
datetime Datetime Datetime
decimal Decimal Decimal, String
double Double Double
double precision Double Double
enum String String
float Single Single
int Int32 Int32
int unsigned Int64 Int64
integer Int32 Int32
integer unsigned Int64 Int64
JSON String -
long varbinary Byte[] Byte[]
long varchar String String
longblob Byte[] Byte[]
longtext String String
mediumblob Byte[] Byte[]
mediumint Int32 Int32
mediumint unsigned Int64 Int64
mediumtext String String
numeric Decimal Decimal
real Double Double
set String String
smallint Int16 Int16
smallint unsigned Int32 Int32
text String String
time TimeSpan TimeSpan
timestamp Datetime Datetime
tinyblob Byte[] Byte[]
tinyint SByte Int16
tinyint unsigned Int16 Int16
tinytext String String
varchar String String
year Int Int

Właściwości działania wyszukiwania

Aby dowiedzieć się więcej o właściwościach, sprawdź działanie Wyszukiwania.

Uaktualnianie łącznika MariaDB

Poniżej przedstawiono kroki ułatwiające uaktualnienie łącznika MariaDB:

  1. Na stronie Edytowanie połączonej usługi wybierz pozycję Zalecane w obszarze Wersja sterownika i skonfiguruj połączoną usługę, odwołując się do właściwości połączonej usługi.

  2. Mapowanie typu danych dla najnowszej połączonej usługi MariaDB różni się od tej dla starszej wersji. Aby dowiedzieć się więcej na temat najnowszego mapowania typów danych, zobacz Mapowanie typów danych dla bazy danych MariaDB.

  3. Najnowsza wersja sterownika w wersji 2 obsługuje więcej wersji bazy danych MariaDB. Aby uzyskać więcej informacji, zobacz Obsługiwane możliwości.

W poniższej tabeli przedstawiono różnice mapowania typów danych między bazą danych MariaDB przy użyciu zalecanej i starszej wersji sterownika.

Typ danych MariaDB Typ danych usługi tymczasowej (przy użyciu zalecanej wersji sterownika) Typ danych usługi tymczasowej (przy użyciu starszej wersji sterownika)
bit(1) UInt64 Wartość logiczna
bit(M), M>1 UInt64 Bajt[]
bool Wartość logiczna Int16
JSON String Bajt[]

Aby uzyskać listę magazynów danych obsługiwanych jako źródła i ujścia działania kopiowania, zobacz obsługiwane magazyny danych.