Share via


Azure Data Factory の最新情報: MySQL、DB2、Sybase、PostgreSQL、Teradata からデータのコピーが可能に

このポストは、6 月 15 日に投稿された Azure Data Factory Updates: Copy data from MySQL, DB2, Sybase, PostgreSQL and Teradata の翻訳です。

Azure Data Factory に新しいデータ ストアのサポートが追加されました。MySQLDB2SybasePostgreSQLTeradata への接続が新たに可能となり、Azure Blob や SQL Database にデータをコピーできるようになりました。

ここでは例として、MySQL から Azure Blob へのデータの移行方法をご説明したいと思います。まず、次のように、MySQL のリンク サービスを追加します。

MySQL のリンク サービスの定義は、次のようになります。

 {
    "name": "MyLinkedService_MySQL",
    "properties":
    {
        "type": "OnPremisesMySqlLinkedService",
        "server": "[ServerName]",
        "database": "[DatabaseName]",
        "username": "[UserName]",
        "password": "[Password]",
        "gatewayName": "[GatewayNameUsedToConnectToThisMySQL]","
        "authenticationType": "[Type of authentication: Basic/Windows/Anonymous]"
    }
}

各フィールドの詳細については、こちらのページ (英語) を参照してください。DB2、Sybase、PostgreSQL、Teradata の場合も操作は同じで、type プロパティに別の種類のリンク サービスを指定するだけです。type プロパティについてはこちら (英語) をご覧ください。他のフィールドを変える必要はありません。

次に、コピーするデータ セットを定義します。以下のようになります。

 {
    "name": "DataSet_MySQL",
    "properties":
    {
        "location":
        {
            "type": "RelationalTableLocation",
            "tableName": "northwind_mysql.orders",
            "linkedServiceName": "MyLinkedService_MySQL"
        },
        "availability":
        {
            "frequency": "Hour",
            "interval": 1,
            "waitOnExternal":
            {
                "retryInterval": "00:01:00",
                "retryTimeout": "00:10:00",
                "maximumRetry": 3
            }
        }
    }
}

これでデータ セットが定義されました。これをパイプラインで使用して、MySQL のデータを Azure Blob にコピーします。

 {
    "name": "CopyPipeline_MySQL_To_Blob",
    "properties":
    {
        "activities":
        [
            {
                "name": "MySQLToBlobCopyActivity",
                "inputs": [ {"name": "DataSet_MySQL"} ],
                "outputs": [ {"name": "DataSet_AzureBlob"} ],
                "type": "CopyActivity",
                "transformation":
                {
                    "source":
                    {                               
                        "type": "RelationalSource",
                        "query": "select * from northwind_mysql.orders"
                    },
                    "sink":
                    {
                        "type": "BlobSink",
                        "writeBatchSize": 1000000,
                        "writeBatchTimeout": "01:00:00"
                    }
                },
                "policy":
                {
                    "concurrency": 1,
                    "executionPriorityOrder": "NewestFirst",
                    "retry": 2,
                    "timeout": "01:00:00"
                }
            }
        ]
    }
}

 

シンプルかつスピーディに構成して、オンプレミスの MySQL から Azure Blob へデータをコピーするパイプラインを設定することができました。

コピーの詳細な対応表と関連情報については、こちらのページ (英語) を参照してください。

注: 現時点では、今回追加されたデータ ストアはコピー操作のソースとしてのみ接続可能であり、コピー先としては利用できません。

マイクロソフトでは引き続き、多くのデータ ストアを Azure Data Factory に追加していく予定です。今後サポートしてほしいデータ ストアがありましたら、Azure Data Factory の UserVoice ページ (英語)MSDN フォーラム (英語) までご連絡ください。その他のフィードバックも大歓迎です。皆様からのたくさんのご意見をお待ちしています!