BigQuery DataFrames セッションと I/O を管理する
このドキュメントでは、BigQuery DataFrames の使用時にセッションを管理し、入出力(I/O)オペレーションを実行する方法について説明します。セッションの作成と使用、インメモリ データの操作、ファイルと BigQuery テーブルからの読み取りと書き込みの方法について説明します。
BigQuery セッション
BigQuery DataFrames は、メタデータの管理に内部的にローカル セッション オブジェクトを使用します。各 DataFrame オブジェクトと Series オブジェクトはセッションに接続され、各セッションはロケーションに接続されます。セッション内の各クエリは、セッションを作成したロケーションで実行されます。次のコードサンプルを使用して、セッションを手動で作成し、データの読み込みに使用します。
複数のセッション インスタンスを同じ設定で初期化しても、それらのデータを結合することはできません。次のコードサンプルは、異なるセッション インスタンスのデータを結合しようとするとエラーが発生することを示しています。
グローバル セッション
BigQuery DataFrames には、bigframes.pandas.get_global_session() メソッドでアクセスできるデフォルトのグローバル セッションが用意されています。Colab では、bigframes.pandas.options.bigquery.project 属性を使用する前に、その属性のプロジェクト ID を指定する必要があります。bigframes.pandas.options.bigquery.location 属性を使用してロケーションを設定することもできます。デフォルトは US マルチリージョンです。
次のコードサンプルは、グローバル セッションのオプションを設定する方法を示しています。
グローバル セッションのロケーションまたはプロジェクトをリセットするには、bigframes.pandas.close_session() メソッドを実行して現在のセッションを閉じます。
多くの BigQuery DataFrames 組み込み関数は、デフォルトでグローバル セッションを使用します。次のコードサンプルは、組み込み関数がグローバル セッションを使用する方法を示しています。
インメモリ データ
pandas でオブジェクトを作成する方法と同様に、組み込みの Python または NumPy データ構造を使用して Dataframes オブジェクトと Series オブジェクトを作成できます。次のコードサンプルを使用してオブジェクトを作成します。
read_pandas() メソッドまたはコンストラクタを使用して pandas オブジェクトを DataFrames オブジェクトに変換するには、次のコードサンプルを使用します。
to_pandas() メソッドを使用して BigQuery DataFrames データをメモリに読み込むには、次のコードサンプルを使用します。
dry_run パラメータを使用した費用見積もり
大量のデータを読み込むには、多くの時間とリソースが必要になることがあります。処理されるデータ量を確認するには、to_pandas() 呼び出しで dry_run=True パラメータを使用します。次のコードサンプルを使用して、ドライランを実行します。
ファイルの読み取りと書き込み
互換性のあるファイルから BigQuery DataFrames にデータを読み取ることができます。これらのファイルは、ローカルマシンまたは Cloud Storage に保存できます。次のコードサンプルを使用して、CSV ファイルからデータを読み取ります。
to_csv メソッドを使用して BigQuery DataFrames をローカル ファイルまたは Cloud Storage ファイルに保存するには、次のコードサンプルを使用します。
BigQuery テーブルの読み取りと書き込み
BigQuery テーブル参照と bigframes.pandas.read_gbq 関数を使用して BigQuery DataFrames を作成するには、次のコードサンプルを使用します。
read_gbq() 関数で SQL 文字列を使用して BigQuery DataFrames にデータを読み込むには、次のコードサンプルを使用します。
DataFrame オブジェクトを BigQuery テーブルに保存するには、DataFrame オブジェクトの to_gbq() メソッドを使用します。次のコードサンプルは、その方法を示しています。
次のステップ
- BigQuery DataFrames の使用方法について確認する。
- BigQuery DataFrames でデータ型の操作方法について確認する。
- BigQuery DataFrames を使用してグラフを可視化する方法を確認する。
- BigQuery DataFrames API リファレンスを確認する。