Azure Data Factory または Synapse Analytics を使用して Square からデータをコピーする (プレビュー)

適用対象: Azure Data Factory Azure Synapse Analytics

ヒント

企業向けのオールインワン分析ソリューション、Microsoft Fabric の Data Factory をお試しください。 Microsoft Fabric は、データ移動からデータ サイエンス、リアルタイム分析、ビジネス インテリジェンス、レポートまで、あらゆるものをカバーしています。 無料で新しい試用版を開始する方法について説明します。

この記事では、Azure Data Factory または Synapse Analytics パイプラインでコピー アクティビティを使用して、Square からデータをコピーする方法について説明します。 この記事は、コピー アクティビティの概要を示しているコピー アクティビティの概要に関する記事に基づいています。

重要

このコネクタは、現在プレビューの段階です。 実際にお試しいただき、フィードバックをお寄せください。 ソリューションでプレビュー版コネクタの依存関係を取得したい場合、Azure サポートにお問い合わせください。

注意

現在、このコネクタはサンドボックス アカウントをサポートしていません。

サポートされる機能

この Square コネクタは、次の機能でサポートされます。

サポートされる機能 IR
Copy アクティビティ (ソース/-) 1.1
Lookup アクティビティ 1.1

① Azure 統合ランタイム ② セルフホステッド統合ランタイム

ソースおよびシンクとしてサポートされているデータ ストアの一覧については、「サポートされているデータ ストア」の表を参照してください。

このサービスでは接続を有効にする組み込みのドライバーが提供されるので、このコネクタを使用してドライバーを手動でインストールする必要はありません。

作業の開始

パイプラインでコピー アクティビティを実行するには、次のいずれかのツールまたは SDK を使用します。

UI を使用して Square のリンク サービスを作成する

次の手順を使用して、Azure portal UI で Square のリンク サービスを作成します。

  1. Azure Data Factory または Synapse ワークスペースの [管理] タブに移動し、[リンクされたサービス] を選択して、[新規] をクリックします。

  2. Square を検索し、Square コネクタを選択します。

    Screenshot of the Square connector.

  3. サービスの詳細を構成し、接続をテストして、新しいリンク サービスを作成します。

    Screenshot of linked service configuration for Square.

コネクタの構成の詳細

次のセクションでは、Square コネクタに固有の Data Factory エンティティの定義に使用されるプロパティについて詳しく説明します。

リンクされたサービスのプロパティ

Square のリンクされたサービスでは、次のプロパティがサポートされます。

プロパティ Description 必須
type type プロパティは、次のように設定する必要があります:Square はい
connectionProperties Square への接続方法を定義するプロパティのグループ。 はい
connectionProperties の下:
host Square インスタンスの URL。 (例: mystore.mysquare.com) はい
clientId Square アプリケーションに関連付けられているクライアント ID。 はい
clientSecret Square アプリケーションに関連付けられているクライアント シークレット。 このフィールドを SecureString とマークして安全に保存するか、Azure Key Vault に保存されているシークレットを参照します。 はい
accessToken Square から取得したアクセス トークン。 認証されたユーザーに明示的なアクセス許可を要求することによって、Square アカウントへの制限付きアクセスを許可します。 OAuth アクセス トークンは、発行されてから 30 日後に有効期限が切れますが、更新トークンには有効期限がありません。 アクセス トークンは、更新トークンによって更新できます。
このフィールドを SecureString とマークして安全に保存するか、Azure Key Vault に保存されているシークレットを参照します。
はい
refreshToken Square から取得した更新トークン。 現在のアクセス トークンの有効期限が切れたときに、新たに取得するために使用されます。
このフィールドを SecureString とマークして安全に格納するか、Azure Key Vault に格納されているシークレットを参照します。
いいえ
useEncryptedEndpoints データ ソースのエンドポイントが HTTPS を使用して暗号化されるかどうかを指定します。 既定値は、true です。 いいえ
useHostVerification TLS 経由で接続するときに、サーバーの証明書内のホスト名がサーバーのホスト名と一致する必要があるかどうか指定します。 既定値は、true です。 いいえ
usePeerVerification TLS 経由で接続するときに、サーバーの ID を検証するかどうかを指定します。 既定値は、true です。 いいえ

Square では、個人用OAuth という 2 種類のアクセス トークンがサポートされます。

  • 個人用アクセス トークンを使用すると、自分の Square アカウントのリソースに Connect API で無制限にアクセスできます。

  • OAuth アクセス トークンを使用すると、任意の Square アカウントに対して、Connect API を使用した認証済みのスコープ指定アクセスを取得できます。 これは、アカウント所有者の代わりにアプリが他の Square アカウント内のリソースにアクセスするときに使用します。 また、OAuth アクセス トークンを使用して、自分の Square アカウントのリソースにアクセスすることもできます。

    重要

    リンク サービスでテスト接続を実行するには、スコープ指定 OAuth アクセス トークンを取得するために MERCHANT_PROFILE_READ が必要です。 他のテーブルにアクセスするためのアクセス許可については、Square OAuth アクセス許可に関するリファレンスを参照してください。

個人用アクセス トークンによる認証に必要なのは accessToken のみですが、OAuth による認証には accessTokenrefreshToken が必要になります。 アクセス トークンの取得方法については、こちらを参照してください。

例:

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

データセットのプロパティ

データセットを定義するために使用できるセクションとプロパティの完全な一覧については、データセットに関する記事をご覧ください。 このセクションでは、Square データセットでサポートされるプロパティの一覧を示します。

Square からデータをコピーするには、データセットの type プロパティを SquareObject に設定します。 次のプロパティがサポートされています。

プロパティ Description 必須
type データセットの type プロパティは、次のように設定する必要があります:SquareObject はい
tableName テーブルの名前。 いいえ (アクティビティ ソースの "query" が指定されている場合)

{
    "name": "SquareDataset",
    "properties": {
        "type": "SquareObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Square linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

コピー アクティビティのプロパティ

アクティビティの定義に利用できるセクションとプロパティの完全な一覧については、パイプラインに関する記事を参照してください。 このセクションでは、Square ソース でサポートされるプロパティの一覧を示します。

ソースとしての Square

Square からデータをコピーするには、コピー アクティビティのソースの種類を SquareSource に設定します。 コピー アクティビティの source セクションでは、次のプロパティがサポートされます。

プロパティ Description 必須
type コピー アクティビティのソースの type プロパティは、次のように設定する必要があります:SquareSource はい
query カスタム SQL クエリを使用してデータを読み取ります。 (例: "SELECT * FROM Business")。 いいえ (データセットの "tableName" が指定されている場合)

例:

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

Lookup アクティビティのプロパティ

プロパティの詳細については、Lookup アクティビティに関するページを参照してください。

Copy アクティビティでソースおよびシンクとしてサポートされるデータ ストアの一覧については、サポートされるデータ ストアに関するセクションを参照してください。