適用対象:
Azure Data Factory
Azure Synapse Analytics
ヒント
Data Factory in Microsoft Fabric は、よりシンプルなアーキテクチャ、組み込みの AI、および新機能を備えた次世代のAzure Data Factoryです。 データ統合を初めて使用する場合は、Fabric Data Factory から始めます。 既存の ADF ワークロードをFabricにアップグレードして、データ サイエンス、リアルタイム分析、レポートの新機能にアクセスできます。
この記事では、Azure Data Factoryまたは Synapse Analytics パイプラインでコピー アクティビティを使用して Square からデータをコピーする方法について説明します。 この記事は、コピー アクティビティの概要を示しているコピー アクティビティの概要に関する記事に基づいています。
重要
Square コネクタ バージョン 1.0 は 削除段階にあります。 Square コネクタをバージョン 1.0 から 2.0 にアップグレードすることをお勧めします。
サポートされる機能
この Square コネクタは、次の機能でサポートされます。
| サポートされる機能 | IR |
|---|---|
| コピー アクティビティ (ソース/-) | (1) (2) |
| Lookup アクティビティ | (1) (2) |
(1) Azure統合ランタイム (2) セルフホステッド統合ランタイム
ソースおよびシンクとしてサポートされているデータ ストアの一覧については、「サポートされているデータ ストア」の表を参照してください。
このサービスでは接続を有効にする組み込みのドライバーが提供されるので、このコネクタを使用してドライバーを手動でインストールする必要はありません。
コネクタは、このarticleのWindowsバージョンをサポートしています。
[前提条件]
データ ストアがオンプレミス ネットワーク、Azure仮想ネットワーク、または Amazon Virtual Private Cloud 内にある場合は、自身がホストする統合ランタイム を構成して接続する必要があります。
データ ストアがマネージド クラウド データ サービスの場合は、Azure Integration Runtimeを使用できます。 アクセスがファイアウォール規則で承認されている IP に制限されている場合は、許可リストに Azure Integration Runtime IP を追加できます。
Azure Data Factoryの 管理された仮想ネットワーク統合ランタイム機能を使用して、セルフホステッド統合ランタイムをインストールして構成することなく、オンプレミス ネットワークにアクセスすることもできます。
Data Factory によってサポートされるネットワーク セキュリティ メカニズムやオプションの詳細については、「データ アクセス戦略」を参照してください。
Note
バージョン 2.0 は、セルフホステッド統合ランタイム バージョン 5.56.0.0 以降でサポートされています。
作業の開始
パイプラインでコピー アクティビティを実行するには、次のいずれかのツールまたは SDK を使用できます。
- データのコピー ツール
- Azure portal
- .NET SDK
- Python SDK
- Azure PowerShell
- REST API
- Azure Resource Manager テンプレート
UI を使用して Square のリンク サービスを作成する
Azure ポータル UI で Square へのリンクされたサービスを作成するには、次の手順に従います。
Azure Data Factoryまたは Synapse ワークスペースの [管理] タブを参照し、[リンクされたサービス] を選択し、[新規] をクリックします。
Azure Data Factory UI を使用した新しいリンク サービスの作成のスクリーンショット Square を検索し、Square コネクタを選択します。
サービスの詳細を構成し、接続をテストして、新しいリンク サービスを作成します。
コネクタの構成の詳細
次のセクションでは、Square コネクタに固有の Data Factory エンティティの定義に使用されるプロパティについて詳しく説明します。
リンクされたサービスのプロパティ
Square コネクタでバージョン 2.0 がサポートされるようになりました。 Square コネクタのバージョンをバージョン 1.0 からアップグレードするには、この セクション を参照してください。 プロパティの詳細については、対応するセクションを参照してください。
バージョン 2.0
Square のリンクされたサービスでは、バージョン 2.0 を適用するときに次のプロパティがサポートされます。
| プロパティ | 説明 | 必須 |
|---|---|---|
| 型 | type プロパティは Square に設定する必要があります。 | はい |
| バージョン | 指定するバージョン。 値は 2.0 です。 |
はい |
| ホスティング | Square インスタンスの URL。 (例: mystore.mysquare.com) | はい |
| clientId | Square アプリケーションに関連付けられているクライアント ID。 | はい |
| clientSecret | Square アプリケーションに関連付けられているクライアント シークレット。 このフィールドを SecureString としてマークして安全に格納するか、 |
はい |
| accessToken | Square から取得したアクセス トークン。 認証されたユーザーに明示的なアクセス許可を要求することによって、Square アカウントへの制限付きアクセスを許可します。 OAuth アクセス トークンは、発行されてから 30 日後に有効期限が切れますが、更新トークンには有効期限がありません。 アクセス トークンは、更新トークンによって更新できます。 このフィールドを SecureString としてマークして安全に格納するか、 |
はい |
| refreshToken | Square から取得した更新トークン。 現在のアクセス トークンの有効期限が切れたときに、新たに取得するために使用されます。 このフィールドを SecureString としてマークして安全にFactory に格納するか、Azure Key Vaultに格納されているシークレットを参照します。 |
いいえ |
| connectVia | データ ストアへの接続に使用するIntegration Runtime。 指定しない場合は、既定のAzure Integration Runtimeが使用されます。 セルフホステッド統合ランタイムを使用でき、そのバージョンは 5.56.0.0 以降である必要があります。 | いいえ |
例:
{
"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"
}
}
}
バージョン 1.0
Square のリンクされたサービスでは、バージョン 1.0 を適用すると、次のプロパティがサポートされます。
| プロパティ | 説明 | 必須 |
|---|---|---|
| 型 | type プロパティは Square に設定する必要があります。 | はい |
| connectionProperties | Square への接続方法を定義するプロパティのグループ。 | はい |
connectionProperties の下: |
||
| ホスティング | Square インスタンスの URL。 (例: mystore.mysquare.com) | はい |
| clientId | Square アプリケーションに関連付けられているクライアント ID。 | はい |
| clientSecret | Square アプリケーションに関連付けられているクライアント シークレット。 このフィールドを SecureString としてマークして安全に格納するか、 |
はい |
| accessToken | Square から取得したアクセス トークン。 認証されたユーザーに明示的なアクセス許可を要求することによって、Square アカウントへの制限付きアクセスを許可します。 OAuth アクセス トークンは、発行されてから 30 日後に有効期限が切れますが、更新トークンには有効期限がありません。 アクセス トークンは、更新トークンによって更新できます。 このフィールドを SecureString としてマークして安全に格納するか、 |
はい |
| refreshToken | Square から取得した更新トークン。 現在のアクセス トークンの有効期限が切れたときに、新たに取得するために使用されます。 このフィールドを SecureString としてマークして安全にFactory に格納するか、Azure Key Vaultに格納されているシークレットを参照します。 |
いいえ |
| useEncryptedEndpoints | データ ソースのエンドポイントが HTTPS を使用して暗号化されるかどうかを指定します。 既定値は、true です。 | いいえ |
| useHostVerification | TLS 経由で接続するときに、サーバーの証明書内のホスト名がサーバーのホスト名と一致する必要があるかどうか指定します。 既定値は、true です。 | いいえ |
| usePeerVerification | TLS 経由で接続するときに、サーバーの ID を検証するかどうかを指定します。 既定値は、true です。 | いいえ |
| connectVia | データ ストアへの接続に使用するIntegration Runtime。 指定しない場合は、既定のAzure Integration Runtimeが使用されます。 | いいえ |
例:
{
"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
}
}
}
}
アクセス トークンの種類
Square では、個人用と OAuth という 2 種類のアクセス トークンがサポートされます。
個人用アクセス トークンを使用すると、自分の Square アカウントのリソースに Connect API で無制限にアクセスできます。
OAuth アクセス トークンを使用すると、任意の Square アカウントに対して、Connect API を使用した認証済みのスコープ指定アクセスを取得できます。 これは、アカウント所有者の代わりにアプリが他の Square アカウント内のリソースにアクセスするときに使用します。 また、OAuth アクセス トークンを使用して、自分の Square アカウントのリソースにアクセスすることもできます。
重要
リンク サービスでテスト接続を実行するには、スコープ指定 OAuth アクセス トークンを取得するために
MERCHANT_PROFILE_READが必要です。 他のテーブルにアクセスするためのアクセス許可については、Square OAuth アクセス許可に関するリファレンスを参照してください。
個人用アクセス トークンによる認証に必要なのは accessToken のみですが、OAuth による認証には accessToken と refreshToken が必要になります。 アクセス トークンの取得方法については、こちらを参照してください。
データセットのプロパティ
データセットを定義するために使用できるセクションとプロパティの完全な一覧については、データセットに関する記事をご覧ください。 このセクションでは、Square データセットでサポートされるプロパティの一覧を示します。
Square からデータをコピーするには、データセットの type プロパティを SquareObject に設定します。 次のプロパティがサポートされています。
| プロパティ | 説明 | 必須 |
|---|---|---|
| 型 | データセットの type プロパティは、SquareObject に設定する必要があります。 | はい |
| tableName | テーブルの名前。 | はい (バージョン 2.0 の場合)。 バージョン 1.0 では No (アクティビティ ソースの "query" が指定されている場合) |
例
{
"name": "SquareDataset",
"properties": {
"type": "SquareObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<Square linked service name>",
"type": "LinkedServiceReference"
}
}
}
Copy アクティビティ のプロパティ
アクティビティの定義に利用できるセクションとプロパティの完全な一覧については、パイプラインに関する記事を参照してください。 このセクションでは、Square ソース でサポートされるプロパティの一覧を示します。
ソースとしての Square
Square からデータをコピーするには、コピー アクティビティのソースの種類を SquareSource に設定します。 コピー アクティビティの source セクションでは、次のプロパティがサポートされます。
| プロパティ | 説明 | 必須 |
|---|---|---|
| 型 | コピー アクティビティのソースの type プロパティは SquareSource に設定する必要があります。 | はい |
| クエリ | カスタム SQL クエリを使用してデータを読み取ります。 例: "SELECT * FROM Business"。 |
いいえ (データセットの "tableName" が指定されている場合) |
Note
query はバージョン 2.0 ではサポートされていません。
例:
"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>"
}
}
}
]
Square のデータ型マッピング
Square からデータをコピーする場合、Square のデータ型からサービスで使用される内部データ型への次のマッピングが適用されます。 コピー アクティビティでソースのスキーマとデータ型がシンクにマッピングされるしくみについては、スキーマとデータ型のマッピングに関する記事を参照してください。
| 正方形のデータ型 | 中間サービスのデータ型 (バージョン 2.0 の場合) | 中間サービスのデータ型 (バージョン 1.0 の場合) |
|---|---|---|
| String | String | String |
| 整数 | Int32 | Int32 |
| Long | Int64 | Int64 |
| ブール値 | ブール値 | ブール値 |
| 日付 | String | サポートされていません。 |
| タイムスタンプ | String | サポートされていません。 |
| オフセット付きタイムスタンプ | String | サポートされていません。 |
| 期間 (完全) | String | String |
| 期間 (時間のみ) | String | String |
| お金 | Int64 | Int64 |
Lookup アクティビティのプロパティ
プロパティの詳細については、Lookup アクティビティに関するページを参照してください。
Square コネクタのライフサイクルとアップグレード
次の表は、Square コネクタのさまざまなバージョンのリリース ステージと変更ログを示しています。
| Version | リリース ステージ | 変更ログ |
|---|---|---|
| バージョン 1.0 | Removed | 適用されません。 |
| バージョン 2.0 | 一般公開 | • セルフホステッド統合ランタイムのバージョンは 5.56.0.0 以降である必要があります。 • 日付、タイムスタンプ、およびオフセットを持つタイムスタンプは、文字列データ型として読み取られます。 • リンクされたサービスでは、 useEncryptedEndpoints、 useHostVerification、 usePeerVerification はサポートされていません。 • query はサポートされていません。 |
Square コネクタをバージョン 1.0 からバージョン 2.0 にアップグレードする
[ リンクされたサービスの編集] ページで、バージョンとして 2.0 を選択します。 詳細については、 リンクされたサービス バージョン 2.0 のプロパティを参照してください。
Square のリンクされたサービス バージョン 2.0 のデータ型マッピングは、バージョン 1.0 とは異なります。 最新のデータ型マッピングについては、「Square の データ型マッピング」を参照してください。
バージョン 5.56.0.0 以降のセルフホステッド統合ランタイムを適用します。
queryはバージョン 1.0 でのみサポートされています。 バージョン 2.0 では、tableNameの代わりにqueryを使用する必要があります。
関連コンテンツ
Copy アクティビティでソースおよびシンクとしてサポートされるデータ ストアの一覧については、サポートされるデータ ストアに関するセクションを参照してください。