Partager via


Copier des données de MariaDB à l’aide d’Azure Data Factory ou Synapse Analytics

S’APPLIQUE À : Azure Data Factory Azure Synapse Analytics

Conseil

Essayez Data Factory dans Microsoft Fabric, une solution d’analyse tout-en-un pour les entreprises. Microsoft Fabric couvre tous les aspects, du déplacement des données à la science des données, en passant par l’analyse en temps réel, l’aide à la décision et la création de rapports. Découvrez comment démarrer un nouvel essai gratuitement !

Cet article explique comment utiliser l’activité de copie dans Azure Data Factory ou Synapse Analytics pour copier des données de MariaDB. Il s’appuie sur l’article Vue d’ensemble de l’activité de copie.

Important

La version 1.0 du connecteur MariaDB est à l’étape de suppression. Vous êtes recommandé de mettre à niveau le connecteur MariaDB de la version 1.0 vers la version 2.0.

Fonctionnalités prises en charge

Ce connecteur MariaDB est pris en charge pour les fonctionnalités suivantes :

Fonctionnalités prises en charge IR
Activité de copie (source/-) (1) (2)
Activité de recherche (1) (2)

① Runtime d’intégration Azure ② Runtime d’intégration auto-hébergé

Pour obtenir la liste des banques de données prises en charge en tant que sources ou récepteurs par l’activité de copie, consultez le tableau Banques de données prises en charge.

Le service fournit un pilote intégré qui permet la connexion. Vous n’avez donc pas besoin d’installer manuellement un pilote à l’aide de ce connecteur.

Ce connecteur prend actuellement en charge MariaDB de la version 10.x, 11.x sous le connecteur MariaDB version 2.0 et 10.0 à 10.5 pour la version 1.0.

Prérequis

Si votre magasin de données se trouve dans un réseau local, un réseau virtuel Azure ou un cloud privé virtuel Amazon, vous devez configurer un runtime d’intégration auto-hébergé pour vous y connecter.

Si votre magasin de données est un service de données cloud managé, vous pouvez utiliser Azure Integration Runtime. Si l’accès est limité aux adresses IP qui sont approuvées dans les règles de pare-feu, vous pouvez ajouter les adresses IP Azure Integration Runtime dans la liste d’autorisation.

Vous pouvez également utiliser la fonctionnalité de runtime d’intégration de réseau virtuel managé dans Azure Data Factory pour accéder au réseau local sans installer et configurer un runtime d’intégration auto-hébergé.

Pour plus d’informations sur les mécanismes de sécurité réseau et les options pris en charge par Data Factory, consultez Stratégies d’accès aux données.

Commencer

Pour effectuer l’activité de copie avec un pipeline, vous pouvez utiliser l’un des outils ou kits sdk suivants :

Créer un service lié à MariaDB à l’aide de l’interface utilisateur

Utilisez les étapes suivantes pour créer un service lié à MariaDB dans l’interface utilisateur du portail Azure.

  1. Accédez à l’onglet Gérer dans votre espace de travail Azure Data Factory ou Synapse et sélectionnez Services liés, puis cliquez sur Nouveau :

  2. Recherchez Maria et sélectionnez le connecteur MariaDB.

    Capture d’écran du connecteur MariaDB.

  3. Configurez les informations du service, testez la connexion et créez le nouveau service lié.

    Capture d’écran de la configuration du service lié pour MariaDB.

Informations de configuration des connecteurs

Les sections suivantes donnent des précisions sur les propriétés utilisées pour définir des entités Data Factory propres au connecteur MariaDB.

Propriétés du service lié

Si vous utilisez la version 2.0, les propriétés suivantes sont prises en charge pour le service lié MariaDB :

Propriété Descriptif Obligatoire
type La propriété type doit être définie sur : MariaDB Oui
driverVersion Version du pilote lorsque vous sélectionnez la version 2.0. La valeur est v2. Oui
serveur Nom de votre serveur MariaDB. Oui
port Numéro de port à connecter au serveur MariaDB. Non
base de données Nom de votre base de données MariaDB. Oui
nom d'utilisateur Votre nom d’utilisateur. Oui
mot de passe Mot de passe du nom d’utilisateur. Marquez ce champ comme SecureString pour le stocker en toute sécurité. Vous pouvez également référencer un secret stocké dans Azure Key Vault. Oui
sslMode Cette option spécifie si le pilote utilise le chiffrement TLS et la vérification lors de la connexion à MariaDB. Par exemple, SSLMode=<0/1/2/3/4>.
Options : DÉSACTIVÉ (0) / PRÉFÉRÉ (1) / REQUIS (2) / VÉRIFIER_CA (3) / VÉRIFIER_IDENTITÉ (4) (Par défaut)
Oui
UtiliserLeMagasinDeConfianceDuSystème Cette option indique s’il faut utiliser un certificat d’autorité de certification provenant du magasin de confiance du système ou d’un fichier PEM spécifié. Par exemple UseSystemTrustStore=<0/1> ;
Options : Enabled (1) / Disabled (0) (par défaut)
Non
connectVia Runtime d’intégration à utiliser pour la connexion à la banque de données. Pour plus d’informations, consultez la section Conditions préalables. À défaut de spécification, le runtime d’intégration Azure par défaut est utilisé. Non

Remarque

Le connecteur MariaDB version 2.0 est défini par défaut sur le chiffrement TLS le plus élevé et la vérification avec sslMode=VERIFY_IDENTITY (4). En fonction de la configuration TLS de votre serveur, ajustez le sslMode en fonction des besoins.

Exemple :

{
    "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"
        }
    }
}

Exemple : stockage du mot de passe dans 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"
        }
    }
}

Si vous utilisez la version 1.0, les propriétés suivantes sont prises en charge :

Propriété Descriptif Obligatoire
type La propriété type doit être définie sur : MariaDB Oui
connectionString Chaîne de connexion ODBC permettant de se connecter à MariaDB.
Vous pouvez également définir un mot de passe dans Azure Key Vault et extraire la configuration pwd de la chaîne de connexion. Pour plus d’informations, reportez-vous aux exemples suivants et à l’article Stocker des informations d’identification dans Azure Key Vault.
Oui
connectVia Runtime d’intégration à utiliser pour la connexion à la banque de données. Pour plus d’informations, consultez la section Conditions préalables. À défaut de spécification, le runtime d’intégration Azure par défaut est utilisé. Non

Exemple :

{
    "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"
        }
    }
}

Propriétés du jeu de données

Pour obtenir la liste complète des sections et propriétés disponibles pour la définition de jeux de données, consultez l’article sur les jeux de données. Cette section donne la liste des propriétés prises en charge par le jeu de données MariaDB.

Pour copier des données de MariaDB, affectez la valeur MariaDBTable à la propriété type du jeu de données. Il n’y a aucune autre propriété propre au type dans cette sorte de jeu de données.

Exemple

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

Propriétés de l’activité de copie

Pour obtenir la liste complète des sections et des propriétés disponibles pour la définition des activités, consultez l’article Pipelines. Cette section donne la liste des propriétés prises en charge par la source MariaDB.

MariaDB en tant que source

Pour copier des données de MariaDB, affectez la valeur MariaDBSource au type source de l’activité de copie. Les propriétés prises en charge dans la section source de l’activité de copie sont les suivantes :

Propriété Descriptif Obligatoire
type La propriété type de la source d’activité de copie doit être définie sur : MariaDBSource Oui
requête Utiliser la requête SQL personnalisée pour lire les données. Par exemple : "SELECT * FROM MyTable". Non (si « tableName » est spécifié dans dataset)

Exemple :

"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>"
            }
        }
    }
]

Mappage de type de données pour MariaDB

Lors de la copie de données à partir de MariaDB, les mappages suivants sont utilisés entre les types de données MariaDB et les types de données intermédiaires utilisés par le service en interne. Pour découvrir comment l’activité de copie mappe le schéma et le type de données la source au récepteur, voir Mappages de schémas et de types de données.

Type de données MariaDB Type de données de service intermédiaire (pour la version 2.0) Type de données de service intermédiaire (pour la version 1.0)
BIGINT Int64 Int64
BIGINT NON SIGNÉ UInt64 Decimal
BIT(1) UInt64 Booléen
BIT(M), M>1 UInt64 Byte[]
BLOB Byte[] Byte[]
BOOL Booléen
(Si TreatTinyAsBoolean=false, il est mappé en tant que SByte. TreatTinyAsBoolean a la valeur true par défaut)
Int16
CHAR Chaîne Chaîne
DATE Dateheure Dateheure
DateHeure Dateheure Dateheure
DECIMAL Decimal Décimal, chaîne
DOUBLE Double Double
DOUBLE PRÉCISION Double Double
ENUM Chaîne Chaîne
FLOAT Célibataire Célibataire
INT Int32 Int32
INT NON SIGNÉ Int64 Int64
INTEGER Int32 Int32
ENTIER NON SIGNÉ UInt32 Int64
JSON Chaîne Byte[]
LONG VARBINARY Byte[] Byte[]
LONG VARCHAR Chaîne Chaîne
LONGBLOB Byte[] Byte[]
LONGTEXT Chaîne Chaîne
MEDIUMBLOB Byte[] Byte[]
MEDIUMINT Int32 Int32
MEDIUMINT UNSIGNED UInt32 Int64
MEDIUMTEXT Chaîne Chaîne
NUMÉRIQUE Decimal Decimal
RÉEL Double Double
SET Chaîne Chaîne
SMALLINT Int16 Int16
SMALLINT NON SIGNÉ UInt16 Int32
TEXTE Chaîne Chaîne
TIME TimeSpan TimeSpan
TIMESTAMP Dateheure Dateheure
TINYBLOB Byte[] Byte[]
TINYINT SByte Int16
TINYINT non signé Int16 Int16
TINYTEXT Chaîne Chaîne
VARCHAR Chaîne Chaîne
YEAR Int Int

Propriétés de l’activité Lookup

Pour en savoir plus sur les propriétés, consultez Activité Lookup.

Mettre à niveau le connecteur MariaDB

Voici les étapes qui vous aideront à mettre à niveau votre connecteur du pilote MariaDB :

  1. Dans la page Modifier le service lié, sélectionnez 2.0 sous version et configurez le service lié en faisant référence à propriétés du service lié.

  2. Le mappage de type de données pour la version 2.0 est différent de celui de la version 1.0. Pour découvrir le mappage de type de données version 2.0, consultez mappage de type de données pour MariaDB.

  3. La dernière version du pilote v2 prend en charge d’autres versions de MariaDB. Pour plus d’informations, consultez Fonctionnalités prises en charge.

Le tableau ci-dessous présente les différences de mappage de type de données entre MariaDB version 2.0 et version 1.0.

Type de données MariaDB Type de données de service intermédiaire (à l’aide de la version 2.0) Type de données de service intermédiaire (à l’aide de la version 1.0)
BIGINT NON SIGNÉ UInt64 Decimal
BIT(1) UInt64 Booléen
BIT(M), M>1 UInt64 Byte[]
BOOL Booléen Int16
DECIMAL Decimal Décimal, chaîne
ENTIER NON SIGNÉ UInt32 Int64
JSON Chaîne Byte[]
MEDIUMINT SANS SIGNE UInt32 Int64
SMALLINT NON SIGNÉ UInt16 Int32
TINYINT SByte Int16

Pour obtenir une liste des magasins de données pris en charge comme sources et récepteurs par l’activité de copie, consultez la section sur les magasins de données pris en charge.