\

Google BigQueryは、大規模なデータセットに対するSQLクエリを高速に実行できるGoogle Cloudのサービスです。PythonからGoogle BigQueryを操作するためのクライアントライブラリが提供されており、これを利用することでPythonプログラムからBigQueryのデータを取得したり、データを挿入したりすることが可能です。

Pythonクライアントライブラリのインストール

PythonでGoogle BigQueryを操作するためには、まずPythonクライアントライブラリをインストールする必要があります。以下のコマンドでインストールできます。

pip install google-cloud-bigquery

クエリの実行

BigQueryに対するクエリの実行は、bigquery.Client()を作成し、そのqueryメソッドを呼び出すことで行います。以下に具体的なコードを示します。

from google.cloud import bigquery

client = bigquery.Client()
QUERY = (
    'SELECT name FROM `bigquery-public-data.usa_names.usa_1910_2013` '
    'WHERE state = "TX" '
    'LIMIT 100'
)
query_job = client.query(QUERY)  # API request
rows = query_job.result()  # Waits for query to finish

for row in rows:
    print(row.name)

このコードは、bigquery-public-data.usa_names.usa_1910_2013テーブルから、stateTXであるレコードのnameを最大100件取得するクエリを実行しています。

データの挿入

データの挿入は、bigquery.Client()insert_rowsメソッドを使用します。以下に具体的なコードを示します。

from google.cloud import bigquery

client = bigquery.Client()
table_id = "your-project.your_dataset.your_table_name"
table = client.get_table(table_id)  # Make an API request.

rows_to_insert = [
    {"full_name": "Phred Phlyntstone", "age": 32},
    {"full_name": "Wylma Phlyntstone", "age": 29},
]

errors = client.insert_rows_json(table, rows_to_insert)  # Make an API request.
if errors == []:
    print("New rows have been added.")
else:
    print("Encountered errors while inserting rows: {}".format(errors))

このコードは、指定したテーブルに対して新しい行を挿入しています。

以上、PythonからGoogle BigQueryを操作する基本的な方法について説明しました。これを活用することで、Pythonプログラムから大規模なデータ分析を行うことが可能になります。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です