次の方法で共有


Azure Data Factory または Synapse Analytics を使用して Impala からデータをコピーする

適用対象: Azure Data Factory Azure Synapse Analytics

ヒント

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

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

Von Bedeutung

Impala コネクタ バージョン 1.0 は 削除段階にありますImpala コネクタをバージョン 1.0 から 2.0 にアップグレードすることをお勧めします。

サポートされる機能

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

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

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

コピー アクティビティによってソースまたはシンクとしてサポートされるデータ ストアの一覧については、サポートされるデータ ストアに関する記事の表をご覧ください。

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

前提条件

データ ストアがオンプレミス ネットワーク、Azure 仮想ネットワーク、または Amazon Virtual Private Cloud 内にある場合は、それに接続するようセルフホステッド統合ランタイムを構成する必要があります。

データ ストアがマネージド クラウド データ サービスである場合は、Azure Integration Runtime を使用できます。 ファイアウォール規則で承認されている IP にアクセスが制限されている場合は、Azure Integration Runtime の IP を許可リストに追加できます。

また、Azure Data Factory のマネージド仮想ネットワーク統合ランタイム機能を使用すれば、セルフホステッド統合ランタイムをインストールして構成しなくても、オンプレミス ネットワークにアクセスすることができます。

Data Factory によってサポートされるネットワーク セキュリティ メカニズムやオプションの詳細については、「データ アクセス戦略」を参照してください。

バージョン 2.0 は、セルフホステッド統合ランタイム バージョン 5.55 以降でサポートされています。

概要

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

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

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

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

    Azure Data Factory の UI を使用した新しいリンク サービスの作成を示すスクリーンショット。

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

    Impala コネクタのスクリーンショット。

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

    Impala のリンク サービスの構成のスクリーンショット。

コネクタの構成の詳細

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

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

Impala コネクタでバージョン 2.0 がサポートされるようになりました。 Impala コネクタのバージョンをバージョン 1.0 からアップグレードするには、この セクション を参照してください。 プロパティの詳細については、対応するセクションを参照してください。

バージョン 2.0

Impala のリンクされたサービスでは、バージョン 2.0 を適用するときに、次のプロパティがサポートされます。

プロパティ 説明 必須
type プロパティを Impala に設定する必要があります。 はい
バージョン 指定するバージョン。 値は 2.0 です。 はい
ホスティング Impala サーバーの IP アドレスまたはホスト名 (192.168.222.160)。 はい
ポート Impala サーバーがクライアント接続のリッスンに使用する TCP ポート。 既定値は 21050 です。 いいえ
thriftTransportProtocol Thrift レイヤーで使用するトランスポート プロトコル。 使用できる値は、 BinaryHTTP です。 既定値は Binary です。 はい
認証タイプ 使用する認証の種類。
使用できる値は AnonymousUsernameAndPassword です
はい
ユーザー名 Impala サーバーへのアクセスに使用するユーザー名。 いいえ
パスワード ユーザー名に対応するパスワード (UsernameAndPassword を使用するとき)。 このフィールドを SecureString とマークして安全に保存するか、Azure Key Vault に保存されているシークレットを参照します。 いいえ
SSLを有効にする サーバーへの接続が TLS を使用して暗号化されるかどうかを指定します。 既定値は、true です。 いいえ
サーバー証明書検証を有効にする 接続時にサーバー SSL 証明書の検証を有効にするかどうかを指定します。 常にシステム 信頼ストアを使用します。 既定値は、true です。 いいえ
connectVia (接続ビア) データ ストアに接続するために使用される統合ランタイム。 詳細については、「前提条件」セクションを参照してください。 指定されていない場合は、既定の Azure Integration Runtime が使用されます。 セルフホステッド統合ランタイムを使用できます。そのバージョンは 5.55 以上である必要があります。 いいえ

例:

{
    "name": "ImpalaLinkedService",
    "properties": {
        "type": "Impala",
        "version": "2.0",
        "typeProperties": {
            "host" : "<host>",
            "port" : "<port>",
            "authenticationType" : "UsernameAndPassword",
            "username" : "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            },
            "enableSsl": true,
            "thriftTransportProtocol": "Binary",
            "enableServerCertificateValidation": true
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

バージョン 1.0

バージョン 1.0 を適用すると、Impala のリンクされたサービスで次のプロパティがサポートされます。

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

プロパティ 説明 必須
type プロパティを Impala に設定する必要があります。 はい
ホスティング Impala サーバーの IP アドレスまたはホスト名 (192.168.222.160)。 はい
ポート Impala サーバーがクライアント接続のリッスンに使用する TCP ポート。 既定値は 21050 です。 いいえ
認証タイプ 使用する認証の種類。
使用できる値は、AnonymousSASLUsername、および UsernameAndPassword です。
はい
ユーザー名 Impala サーバーへのアクセスに使用するユーザー名。 既定値は anonymous です (SASLUsername を使用するとき)。 いいえ
パスワード ユーザー名に対応するパスワード (UsernameAndPassword を使用するとき)。 このフィールドを SecureString とマークして安全に保存するか、Azure Key Vault に保存されているシークレットを参照します。 いいえ
SSLを有効にする サーバーへの接続が TLS を使用して暗号化されるかどうかを指定します。 既定値は false です。 いいえ
trustedCertPath TLS 経由で接続するときにサーバーを検証するために使用される信頼された CA 証明書を含む .pem ファイルの完全なパス。 このプロパティは、セルフホステッド統合ランタイムで TLS を使用している場合にのみ設定できます。 既定値は、IR でインストールされる cacerts.pem ファイルです。 いいえ
useSystemTrustStore システムの信頼ストアと指定した PEM ファイルのどちらの CA 証明書を使用するかを指定します。 既定値は false です。 いいえ
allowHostNameCNMismatch TLS 経由で接続するときに、CA が発行した TLS/SSL 証明書名がサーバーのホスト名と一致する必要があるかどうかを指定します。 既定値は false です。 いいえ
allowSelfSignedServerCert サーバーからの自己署名証明書を許可するかどうかを指定します。 既定値は false です。 いいえ
connectVia (接続ビア) データ ストアに接続するために使用される統合ランタイム。 詳細については、「前提条件」セクションを参照してください。 指定されていない場合は、既定の Azure Integration Runtime が使用されます。 いいえ

例:

{
    "name": "ImpalaLinkedService",
    "properties": {
        "type": "Impala",
        "typeProperties": {
            "host" : "<host>",
            "port" : "<port>",
            "authenticationType" : "UsernameAndPassword",
            "username" : "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

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

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

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

プロパティ 説明 必須
データセットの type プロパティは、ImpalaObject に設定する必要があります はい
スキーマ スキーマの名前。 いいえ (アクティビティ ソースの "query" が指定されている場合)
テーブル テーブルの名前。 いいえ (アクティビティ ソースの "query" が指定されている場合)
テーブル名 スキーマがあるテーブルの名前。 このプロパティは下位互換性のためにサポートされています。 新しいワークロードでは、schematable を使用します。 いいえ (アクティビティ ソースの "query" が指定されている場合)

{
    "name": "ImpalaDataset",
    "properties": {
        "type": "ImpalaObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Impala linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

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

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

ソース タイプとしての Impala

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

プロパティ 説明 必須
コピー アクティビティのソースの type プロパティは ImpalaSource に設定する必要があります。 はい
クエリ カスタム SQL クエリを使用してデータを読み取ります。 たとえば "SELECT * FROM MyTable" です。 いいえ (データセットの "tableName" が指定されている場合)

例:

"activities":[
    {
        "name": "CopyFromImpala",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Impala input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "ImpalaSource",
                "query": "SELECT * FROM MyTable"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Impala のデータ型マッピング

Impala との間でデータをコピーするときに、サービス内で次の中間データ型マッピングが使用されます。 コピー アクティビティでソースのスキーマとデータ型がシンクにマッピングされるしくみについては、スキーマとデータ型のマッピングに関する記事を参照してください。

Impala データ型 中間サービスのデータ型 (バージョン 2.0 の場合) 中間サービスのデータ型 (バージョン 1.0 の場合)
ARRAY
BIGINT Int64 Int64
ブーリアン ブール値 ブール値
CHAR
日付 日付と時間 日付と時間
DECIMAL Decimal Decimal
DOUBLE Double Double
FLOAT シングル シングル
INT Int32 Int32
地図
SMALLINT Int16 Int16
STRING
構造
タイムスタンプ DateTimeOffset 日付と時間
タイニーイント (TINYINT) SByte Int16
VARCHAR

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

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

Impala コネクタのライフサイクルとアップグレード

次の表は、さまざまなバージョンの Impala コネクタのリリース ステージと変更ログを示しています。

Version リリース段階 変更ログ
バージョン 1.0 Removed 適用されません。
バージョン 2.0 GA バージョンあり • セルフホステッド統合ランタイムのバージョンは 5.55 以上である必要があります。

enableSSL の既定値は true です。 enableServerCertificateValidation はサポートされています。
trustedCertPathuseSystemTrustStoreallowHostNameCNMismatchallowSelfSignedServerCert はサポートされていません。

• TIMESTAMP は DateTimeOffset データ型として読み取られます。

• TINYINT は SByte データ型として読み取られます。

• SASLUsername 認証の種類はサポートされていません。

Impala コネクタをバージョン 1.0 からバージョン 2.0 にアップグレードする

  1. [ リンクされたサービスの編集] ページで、バージョン 2.0 を選択し、リンクされたサービス プロパティバージョン 2.0 を参照してリンクされたサービスを構成します。

  2. Impala のリンクされたサービス バージョン 2.0 のデータ型マッピングは、バージョン 1.0 とは異なります。 最新のデータ型マッピングについては、「 Impala のデータ型マッピング」を参照してください。

  3. バージョン 5.55 以上のセルフホステッド統合ランタイムを適用します。

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