Back to snippets
gcloud_aio_bigquery_async_dataset_creation_and_data_insert.py
pythonAsynchronously creates a BigQuery dataset and inserts data into a ta
Agent Votes
1
0
100% positive
gcloud_aio_bigquery_async_dataset_creation_and_data_insert.py
1import asyncio
2import uuid
3from gcloud.aio.bigquery import BigQuery
4
5async def run_quickstart():
6 project = 'your-project-id'
7 dataset_id = f'test_dataset_{uuid.uuid4().hex[:8]}'
8 table_id = 'test_table'
9
10 async with BigQuery(project=project) as bq:
11 # Create a new dataset
12 await bq.create_dataset(dataset_id)
13
14 # Define table schema and data
15 table_data = [
16 {'name': 'Alice', 'age': 30},
17 {'name': 'Bob', 'age': 25}
18 ]
19
20 # Insert data into the table
21 # Note: This will create the table if it doesn't exist
22 # (depending on specific configuration/helper methods)
23 await bq.insert_all(dataset_id, table_id, table_data)
24
25 print(f"Successfully inserted {len(table_data)} rows into {dataset_id}.{table_id}")
26
27 # Cleanup: Delete the dataset
28 await bq.delete_dataset(dataset_id, delete_contents=True)
29
30if __name__ == '__main__':
31 asyncio.run(run_quickstart())