Partager via


Copier des données à partir de Square à 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, la business intelligence et le reporting. Découvrez comment démarrer un nouvel essai gratuitement !

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

Important

Le connecteur Square version 1.0 est à l’étape de suppression. Il est recommandé de mettre à niveau le connecteur Square de la version 1.0 vers la version 2.0.

Fonctionnalités prises en charge

Ce connecteur Square est pris en charge pour les capacité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 magasins de données pris en charge en tant que sources et récepteurs, consultez la table Magasins de données pris en charge.

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

Le connecteur prend en charge les versions Windows de cet article.

Prerequisites

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.

Remarque

La version 2.0 est prise en charge avec le runtime d’intégration auto-hébergé version 5.56.0.0 ou ultérieure.

Prise en main

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é à Square à l’aide de l’interface utilisateur

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

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

  2. Recherchez Square et sélectionnez le connecteur Square.

    Capture d’écran du connecteur Square.

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

Détails de configuration du connecteur

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

Propriétés du service lié

Le connecteur Square prend désormais en charge la version 2.0. Reportez-vous à cette section pour mettre à niveau votre version de connecteur Square à partir de la version 1.0. Pour plus d’informations sur la propriété, consultez les sections correspondantes.

Version 2.0

Le service lié Square prend en charge les propriétés suivantes lors de l’application de la version 2.0 :

Propriété Description Obligatoire
type La propriété type doit être définie sur Square. Oui
version Version que vous spécifiez. La valeur est 2.0. Oui
host URL de l’instance Square (c’est-à-dire mystore.mysquare.com). Oui
clientId ID client associé à l’application Square. Oui
clientSecret Clé secrète client associée à l’application Square. Marquez ce champ en tant que SecureString afin de le stocker de façon sécurisée, ou référencez un secret stocké dans Azure Key Vault. Oui
accessToken Jeton d’accès obtenu à partir du Carré. Octroie un accès limité à un compte Carré en demandant à un utilisateur authentifié des autorisations explicites. Les jetons d’accès OAuth expirent 30 jours après leur émission, mais les jetons d’actualisation n’expirent pas. Des jetons d’accès peuvent être actualisés par un jeton d’actualisation.
Marquez ce champ en tant que SecureString afin de le stocker de façon sécurisée, ou référencez un secret stocké dans Azure Key Vault. Pour plus d’informations sur les types de jetons d’accès, consultez Types de jetons d’accès.
Oui
refreshToken Jeton d’actualisation obtenu du Carré. Utilisé pour obtenir de nouveaux jetons d’accès lorsque le jeton actuel arrive à expiration.
Marquez ce champ en tant que SecureString afin de le stocker de façon sécurisée, ou référencez un secret stocké dans Azure Key Vault.
Non
connectVia Runtime d’intégration à utiliser pour la connexion à la banque de données. À défaut de spécification, le runtime d’intégration Azure par défaut est utilisé. Vous pouvez utiliser le runtime d’intégration auto-hébergé et sa version doit être 5.56.0.0 ou ultérieure. Non

Exemple :

{
    "name": "SquareLinkedService",
    "properties": {
        "type": "Square",
        "version": "2.0",
        "typeProperties": {
            "host": "<e.g. mystore.mysquare.com>", 
            "clientId": "<client ID>", 
            "clientSecret": {
                "type": "SecureString",
                "value": "<clientSecret>"
            }, 
            "accessToken": {
                "type": "SecureString",
                "value": "<access token>"
            }, 
            "refreshToken": {
                "type": "SecureString",
                "value": "<refresh token>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Version 1.0

Le service lié Square prend en charge les propriétés suivantes lors de l’application de la version 1.0 (préversion) :

Propriété Description Obligatoire
type La propriété type doit être définie sur Square. Oui
connectionProperties Groupe de propriétés qui définit la façon de se connecter au Carré. Oui
Sous connectionProperties :
host URL de l’instance Square (c’est-à-dire mystore.mysquare.com). Oui
clientId ID client associé à l’application Square. Oui
clientSecret Clé secrète client associée à l’application Square. Marquez ce champ en tant que SecureString afin de le stocker de façon sécurisée, ou référencez un secret stocké dans Azure Key Vault. Oui
accessToken Jeton d’accès obtenu à partir du Carré. Octroie un accès limité à un compte Carré en demandant à un utilisateur authentifié des autorisations explicites. Les jetons d’accès OAuth expirent 30 jours après leur émission, mais les jetons d’actualisation n’expirent pas. Des jetons d’accès peuvent être actualisés par un jeton d’actualisation.
Marquez ce champ en tant que SecureString afin de le stocker de façon sécurisée, ou référencez un secret stocké dans Azure Key Vault. Pour plus d’informations sur les types de jetons d’accès, consultez Types de jetons d’accès.
Oui
refreshToken Jeton d’actualisation obtenu du Carré. Utilisé pour obtenir de nouveaux jetons d’accès lorsque le jeton actuel arrive à expiration.
Marquez ce champ en tant que SecureString afin de le stocker de façon sécurisée, ou référencez un secret stocké dans Azure Key Vault.
Non
useEncryptedEndpoints Indique si les points de terminaison de la source de données sont chiffrés suivant le protocole HTTPS. La valeur par défaut est true. Non
useHostVerification Indique si le nom d’hôte du certificat du serveur doit correspondre à celui du serveur en cas de connexion TLS. La valeur par défaut est true. Non
usePeerVerification Indique s’il faut vérifier l’identité du serveur en cas de connexion TLS. La valeur par défaut est true. Non
connectVia Runtime d’intégration à utiliser pour la connexion à la banque de données. À défaut de spécification, le runtime d’intégration Azure par défaut est utilisé. Non

Exemple :

{
    "name": "SquareLinkedService",
    "properties": {
        "type": "Square",
        "typeProperties": {
            "connectionProperties": {
                "host": "<e.g. mystore.mysquare.com>", 
                "clientId": "<client ID>", 
                "clientSecret": {
                    "type": "SecureString",
                    "value": "<clientSecret>"
                }, 
                "accessToken": {
                    "type": "SecureString",
                    "value": "<access token>"
                }, 
                "refreshToken": {
                    "type": "SecureString",
                    "value": "<refresh token>"
                }, 
                "useEncryptedEndpoints": true, 
                "useHostVerification": true, 
                "usePeerVerification": true 
            }
        }
    }
}

Types de jeton d’accès

Le Carré prend en charge deux types de jetons d’accès : personnels et OAuth.

  • Les jetons d’accès personnels sont utilisés pour bénéficier de l’un accès illimité à l’API Connect aux ressources dans votre propre compte Carré.

  • Les jetons d’accès OAuth sont utilisés pour obtenir un accès d’API Connect authentifié et délimité à n’importe quel compte Carré. Utilisez-les quand votre application accède à des ressources dans d’autres comptes Carré pour le compte de propriétaires de comptes. Les jetons d’accès OAuth permettent également d’accéder à des ressources dans votre propre compte Carré.

    Important

    Pour effectuer une Connexion de test dans le service lié, MERCHANT_PROFILE_READ est nécessaire pour obtenir un jeton d’accès OAuth étendu. Pour obtenir des autorisations pour accéder à d’autres tables, consultez la Référence des autorisations OAuth carrées.

L'authentification via un jeton d'accès personnel nécessite uniquement accessToken, tandis que l'authentification via un jeton d'accès OAuth requiert accessToken et refreshToken. Découvrez comment récupérer un jeton d’accès à partir d’ici.

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

Pour copier des données de Square, affectez la valeur SquareObject à la propriété type du jeu de données. Les propriétés prises en charge sont les suivantes :

Propriété Description Obligatoire
type La propriété type du jeu de données doit être définie sur : SquareObject Oui
tableName Nom de la table. Oui pour la version 2.0.
Non pour la version 1.0 (si « requête » dans la source d’activité est spécifiée)

Exemple

{
    "name": "SquareDataset",
    "properties": {
        "type": "SquareObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Square 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 Square.

Square comme source

Pour copier des données de Square, affectez la valeur SquareSource 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é Description Obligatoire
type La propriété type de la source de l’activité de copie doit être définie sur SquareSource. Oui
query Utiliser la requête SQL personnalisée pour lire les données. Par exemple : "SELECT * FROM Business". Non (si « tableName » est spécifié dans dataset)

Remarque

query n’est pas pris en charge dans la version 2.0.

Exemple :

"activities":[
    {
        "name": "CopyFromSquare",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Square input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "SquareSource",
                "query": "SELECT * FROM Business"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Mappage de type de données pour Square

Lorsque vous copiez des données à partir de Square, les mappages suivants s’appliquent des types de données Square aux types de données internes utilisés par le service. Pour découvrir comment l’activité de copie mappe le schéma et le type de données la source au récepteur, consultez Mappage de schéma dans l’activité de copie.

Type de données Square 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)
Chaîne Chaîne Chaîne
Nombre entier Int32 Int32
Long Int64 Int64
Booléen Booléen Booléen
Date Chaîne Non pris en charge.
Timestamp Chaîne Non pris en charge.
Horodatage avec décalage Chaîne Non pris en charge.
Durée (complète) Chaîne Chaîne
Durée (heure uniquement) Chaîne Chaîne
Money Int64 Int64

Propriétés de l’activité Lookup

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

Cycle de vie et mise à niveau du connecteur Square

Le tableau suivant présente l’étape de mise en production et les journaux de modification pour différentes versions du connecteur Square :

Version Phase de mise en production Journal des modifications
Version 1.0 Removed Non applicable.
Version 2.0 Disponibilité générale • La version du runtime d’intégration auto-hébergé doit être 5.56.0.0 ou ultérieure.

• Date, Timestamp et Timestamp avec décalage sont lus en tant que type de données String.

useEncryptedEndpoints, useHostVerificationusePeerVerification ne sont pas pris en charge dans le service lié.

query n’est pas pris en charge.

Mettre à niveau le connecteur Square de la version 1.0 vers la version 2.0

  1. Dans la page Modifier le service lié , sélectionnez 2.0 pour la version. Pour plus d’informations, consultez les propriétés du service lié version 2.0.

  2. Le mappage de type de données pour le service lié Square version 2.0 est différent de celui de la version 1.0. Pour découvrir le mappage de type de données le plus récent, consultez Mappage de type de données pour Square.

  3. Appliquer un runtime d’intégration auto-hébergé avec la version 5.56.0.0 ou supérieure.

  4. query est uniquement pris en charge dans la version 1.0. Vous devez utiliser tableName au lieu de query dans la version 2.0.

Consultez les banques de données prises en charge pour obtenir la liste des banques de données prises en charge en tant que sources et récepteurs par l’activité de copie.