各製品の資料を入手。
詳細はこちら →CData
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
Pythonエコシステムには多くのモジュールがあり、システム構築を素早く効率的に行うことができます。本記事では、CData Python Connector for ActOn とpetl フレームワークを使って、Act-On データにPython から接続してデータを変換、CSV に出力するETL 変換を実装してみます。
CData Python Connector は効率的なデータ処理によりAct-On データ にPython から接続し、高いパフォーマンスを発揮します。Act-On にデータをクエリする際、ドライバーはフィルタリング、集計などがサポートされている場合SQL 処理を直接Act-On 側に行わせ、サポートされていないSQL 処理については、組み込みのSQL エンジンによりクライアント側で処理を行います(JOIN やSQL 関数など)。
pip で必要なモジュールおよびフレームワークをインストールします:
pip install petl pip install pandas
モジュールとフレームワークをインストールしたら、ETL アプリケーションを組んでいきます。コードのスニペットは以下の通りです。フルコードは記事の末尾に付いています。
CData Connector を含むモジュールをインポートします。
import petl as etl import pandas as pd import cdata.acton as mod
接続文字列で接続を確立します。connect 関数を使って、CData Act-On Connector からAct-On への接続を行います
cnxn = mod.connect("InitiateOAuth=GETANDREFRESH;OAuthSettingsLocation=/PATH/TO/OAuthSettings.txt")")
ActOn はOAuth 認証標準を利用しています。OAuth を使って認証するには、アプリケーションを作成してOAuthClientId、OAuthClientSecret、およびCallbackURL 接続プロパティを取得する必要があります。
認証方法についての詳細は、ヘルプドキュメントの「認証の使用」を参照してください。
Act-On にはSQL でデータアクセスが可能です。Images エンティティからのデータを読み出します。
sql = "SELECT Id, Name FROM Images WHERE FolderName = 'New Folder'"
DataFrame に格納されたクエリ結果を使って、petl でETL(抽出・変換・ロード)パイプラインを組みます。この例では、Act-On データ を取得して、Name カラムでデータをソートして、CSV ファイルにデータをロードします。
table1 = etl.fromdb(cnxn,sql) table2 = etl.sort(table1,'Name') etl.tocsv(table2,'images_data.csv')
CData Python Connector for ActOn を使えば、データベースを扱う場合と同感覚で、Act-On データ を扱うことができ、petl のようなETL パッケージから直接データにアクセスが可能になります。
Act-On Python Connector の30日の無償トライアル をぜひダウンロードして、Act-On データ への接続をPython アプリやスクリプトから簡単に作成しましょう。
import petl as etl import pandas as pd import cdata.acton as mod cnxn = mod.connect("InitiateOAuth=GETANDREFRESH;OAuthSettingsLocation=/PATH/TO/OAuthSettings.txt")") sql = "SELECT Id, Name FROM Images WHERE FolderName = 'New Folder'" table1 = etl.fromdb(cnxn,sql) table2 = etl.sort(table1,'Name') etl.tocsv(table2,'images_data.csv')