クエリサービスへの Jupyter Notebook の接続
このドキュメントでは、Jupyter Notebook をAdobe Experience Platform クエリサービスに接続するために必要な手順について説明します。
はじめに
このガイドでは、Jupyter Notebook へのアクセス権を既に持ち、そのインターフェイスについて理解している必要があります。 Jupyter Notebook をダウンロードするには、または詳細情報については、official Jupyter Notebook documentation を参照してください。
Jupyter Notebook を Platform に接続するために必要な資格情報を取得するには、Experience Platform UI の クエリ ワークスペースにアクセスできる必要があります。 現在、 クエリ ワークスペースにアクセスできない場合は、組織の管理者にお問い合わせください。
Web サイトのガイド付きインストールプロセスに従って、 好みのバージョンのアプリケーションをインストールします。
Anaconda Navigator のホーム画面で、サポートされているアプリケーションのリストから Jupyter Notebook を選択して、プログラムを起動します。
詳しくは、 アナコンダの公式ドキュメントを参照してください。
Jupyter の公式ドキュメントには、 コマンドラインインターフェイスからノートブックを実行する(CLI)手順が記載されています。
Launch Jupyter Notebook
新しい Jupyter Notebook web アプリケーションを開いたら、UI から New ドロップダウンを選択し、続いて「Python 3」を選択して、新しいノートブックを作成します。 Notebook エディターが表示されます。
Notebook エディターの最初の行に値 pip install psycopg2-binary
を入力し、コマンドバーから Run を選択します。 成功メッセージが入力行の下に表示されます。
次に、Python 用の PostgreSQL データベース アダプタをインポートします。 値を import psycopg2
と入力し、「Run」を選択します。 このプロセスの成功メッセージはありません。 エラーメッセージが表示されない場合は、次の手順に進みます。
ここで、値 conn = psycopg2.connect("{YOUR_CREDENTIALS}")
を入力してAdobe Experience Platform資格情報を指定する必要があります。 接続資格情報は、Platform UI の「 資格情報 」タブの下の「 クエリ 」セクションにあります。 手順について詳しくは、 組織の資格情報の検索方法に関するドキュメントを参照してください。
サードパーティクライアントを使用して詳細を繰り返し入力する手間を省く場合は、有効期限のない資格情報を使用することをお勧めします。 有効期限のない資格情報の生成方法と使用方法の手順については、ドキュメントを参照してください。
conn = psycopg2.connect('''sslmode=require host=<YOUR_HOST_CREDENTIAL> port=80 dbname=prod:all user=<YOUR_ORGANIZATION_ID> password=<YOUR_PASSWORD>''')"
これで、Jupyter Notebook インスタンスがクエリサービスに接続されました。
クエリ実行の例
Jupyter Notebook をクエリサービスに接続したので、Notebook 入力を使用してデータセットに対してクエリを実行できます。 次の例では、単純なクエリを使用してプロセスを示しています。
次の値を入力します。
cur = conn.cursor()
cur.execute('''<YOUR_QUERY_HERE>''')
data = [r for r in cur]
次に、パラメーター(上記の例では data
)を呼び出して、クエリの結果をフォーマットされていない応答で表示します。
人間が読みやすい方法で結果を書式設定するには、次のコマンドを使用します。
colnames = [desc[0] for desc in cur.description]
import pandas as pd
import numpy as np
df = pd.DataFrame(samples,columns=colnames)
df.fillna(0,inplace=True)
これらのコマンドは、成功メッセージを生成しません。 エラーメッセージがない場合は、関数を使用して SQL クエリの結果をテーブル形式で出力できます。
df.head()
関数を入力および実行して、表形式のクエリ結果を確認します。
次の手順
クエリサービスに接続したので、Jupyter Notebook を使用してクエリを記述できます。 クエリの書き込みおよび実行方法について詳しくは、『クエリ実行ガイド』を参照してください。