BigQuery DataFrames を使用する
プレビュー版のサポートについては、bigframes-feedback@google.com までメールでお問い合わせください。
このドキュメントでは、BigQuery DataFrames を使用して、BigQuery ノートブックでデータの分析と操作を行う方法について説明します。
BigQuery DataFrames は、BigQuery ノートブックでデータの分析と ML タスクの実行に使用できる Python クライアント ライブラリです。
BigQuery DataFrames は、次の要素で構成されています。
bigframes.pandas
は、BigQuery 上に pandas のような API を実装します。bigframes.ml
は、BigQuery ML 上に scikit-learn のような API を実装します。
始める前に
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
BigQuery API が有効になっていることを確認します。
新しいプロジェクトを作成している場合は、BigQuery API が自動的に有効になっています。
必要な権限
BigQuery ノートブックで BigQuery DataFrames を使用するには、次の Identity and Access Management(IAM)ロールが必要です。
- BigQuery ユーザー(
roles/bigquery.user
) - ノートブック ランタイム ユーザー(
roles/aiplatform.notebookRuntimeUser
) - コード作成者(
roles/dataform.codeCreator
)
ノートブックを作成する
BigQuery エディタからノートブックを作成するの手順に沿って、新しいノートブックを作成します。
BigQuery DataFrames オプションを設定する
インストール後、BigQuery DataFrames を使用するロケーションとプロジェクトを指定する必要があります。
ノートブックのロケーションとプロジェクトは、次の方法で定義できます。
bigframes.pandas
を使用する
bigframes.pandas
API は、BigQuery でデータの分析と操作に使用できる pandas
のような API を提供します。bigframes.pandas
API は、テラバイト単位の BigQuery データの処理をサポートするようにスケーラブルで、BigQuery クエリエンジンを使用して計算を実行します。
bigframes.pandas
API には次の機能があります。
- 入力と出力
- ローカル CSV ファイル、Cloud Storage ファイル、
pandas
DataFrame、BigQuery モデル、BigQuery 関数など、さまざまなソースのデータにアクセスし、BigQuery DataFrames に読み込むことができます。BigQuery DataFrames から BigQuery テーブルを作成することもできます。 - データの操作
- 開発には、SQL の代わりに Python を使用できます。BigQuery データ操作はすべて Python で開発でき、言語を切り替えて SQL ステートメントをテキスト文字列としてキャプチャする必要がなくなります。
bigframes.pandas
API には 250 を超えるpandas
関数が用意されています。 - Python エコシステムと可視化
bigframes.pandas
API は、ツールの Python エコシステム全体へのゲートウェイです。この API は高度な統計オペレーションをサポートし、BigQuery DataFrames から生成された集計を可視化できます。また、組み込みのサンプリング オペレーションを使用して、BigQuery の DataFrame からpandas
DataFrame に切り替えることもできます。- カスタム Python 関数
- カスタム Python 関数とパッケージを使用できます。
bigframes.pandas
を使用すると、BigQuery のスケールでスカラー Python 関数を実行するリモート関数をデプロイできます。これらの関数は SQL ルーチンとして BigQuery に保持し、SQL 関数のように使用できます。
BigQuery テーブルまたはクエリからデータを読み込む
次の方法で、BigQuery テーブルまたはクエリから DataFrame を作成できます。
CSV ファイルからデータを読み込む
DataFrame は、ローカルまたは Cloud Storage CSV ファイルから次の方法で作成できます。
データの検査と操作
bigframes.pandas
を使用して、データの検査と計算のオペレーションを実行できます。
次のコードサンプルは、body_mass_g
列を検査し、平均 body_mass
を計算して、平均 body_mass
を species
で計算するために bigframes.pandas
を使用する場合を示しています。
bigframes.ml
を使用する
bigframes.ml
scikit-learn のような API を使用すると、複数のタイプの ML モデルを作成できます。
回帰
次のコードサンプルは、次の処理を行うために bigframes.ml
を使用する場合を示しています。
- BigQuery からデータを読み込む
- トレーニング データをクリーニングして準備する
bigframes.ml.LinearRegression
回帰モデルを作成して適用する
クラスタリング
bigframes.ml.cluster
モジュールを使用して、クラスタリング モデル用の Estimator を作成できます。
次のコードサンプルは、データ セグメンテーション用の K 平均法クラスタリング モデルを作成するために bigframes.ml.cluster
KMeans
クラスを使用する場合を示しています。
LLM リモートモデル
bigframes.ml.llm
モジュールを使用して、リモート大規模言語モデル(LLM)用の Estimator を作成できます。
次のコードサンプルは、テキスト生成用の PaLM2 テキスト生成モデルを作成するために bigframes.ml.llm
PaLM2TextGenerator
クラスを使用する場合を示しています。
次のステップ
BigQuery ノートブックで BigQuery DataFrames を使用して分析と ML タスクを実行する方法については、BigQuery DataFrames クイックスタートをご覧ください。
BigQuery DataFrames を探索するには、BigQuery DataFrames ライブラリのリファレンス ドキュメントをご覧ください。
ソースコードを確認するには、GitHub の BigQuery DataFrames ソースコードをご覧ください。