How to load data from BigQuery to DynamoDB
Learn how to use Airbyte to synchronize your BigQuery data into DynamoDB within minutes.


Building your pipeline or Using Airbyte
Airbyte is the only open source solution empowering data teams to meet all their growing custom business demands in the new AI era.
- Inconsistent and inaccurate data
- Laborious and expensive
- Brittle and inflexible
- Reliable and accurate
- Extensible and scalable for all your needs
- Deployed and governed your way
Start syncing with Airbyte in 3 easy steps within 10 minutes



Take a virtual tour
Demo video of Airbyte Cloud
Demo video of AI Connector Builder
Setup Complexities simplified!
Simple & Easy to use Interface
Airbyte is built to get out of your way. Our clean, modern interface walks you through setup, so you can go from zero to sync in minutes—without deep technical expertise.
Guided Tour: Assisting you in building connections
Whether you’re setting up your first connection or managing complex syncs, Airbyte’s UI and documentation help you move with confidence. No guesswork. Just clarity.
Airbyte AI Assistant that will act as your sidekick in building your data pipelines in Minutes
Airbyte’s built-in assistant helps you choose sources, set destinations, and configure syncs quickly. It’s like having a data engineer on call—without the overhead.
What sets Airbyte Apart
Modern GenAI Workflows
Move Large Volumes, Fast
An Extensible Open-Source Standard
Full Control & Security
Fully Featured & Integrated
Enterprise Support with SLAs
What our users say

Raman Singh
Predictable, straightforward pricing model that simplified budgeting and significantly reduced overall spend

Chase Zieman

“Airbyte helped us accelerate our progress by years, compared to our competitors. We don’t need to worry about connectors and focus on creating value for our users instead of building infrastructure. That’s priceless. The time and energy saved allows us to disrupt and grow faster.”

Rupak Patel
"With Airbyte, we could just push a few buttons, allow API access, and bring all the data into Google BigQuery. By blending all the different marketing data sources, we can gain valuable insights."
How to Sync to Manually
Install and configure the Google Cloud SDK and AWS CLI on your local machine or cloud-based VM. This will enable you to interact with BigQuery and DynamoDB programmatically.
- For Google Cloud SDK, download and install it from [Google Cloud's official site](https://cloud.google.com/sdk/docs/install) and authenticate using `gcloud init`.
- For AWS CLI, download and install it from [AWS CLI's official site](https://aws.amazon.com/cli/) and configure it using `aws configure` with your access keys and preferred region.
Use BigQuery's export functionality to move data to Google Cloud Storage (GCS) as CSV or JSON files.
- Use the `bq extract` command for exporting data:
```
bq extract --destination_format CSV 'project_id:dataset.table' gs://your-bucket-name/filename.csv
```
- Ensure the Google Cloud Storage bucket is accessible and that you have the necessary permissions.
Using the Google Cloud SDK, download the exported data files from GCS to your local machine or a compute instance.
- Use the `gsutil` command to download the files:
```
gsutil cp gs://your-bucket-name/filename.csv /local/path/
```
Convert the downloaded data into a format suitable for DynamoDB. This usually involves transforming the data into JSON and organizing it to match your DynamoDB table’s schema.
- Write a script in Python or another language to read the CSV/JSON file, process each record, and convert it to a JSON object compatible with DynamoDB.
- Ensure the data types and attribute names conform to your DynamoDB table structure.
Use AWS SDKs to write a script that reads the prepared data and imports it into DynamoDB.
- Utilize the `boto3` library for Python to interact with DynamoDB:
```python
import boto3
dynamodb = boto3.resource('dynamodb', region_name='your-region')
table = dynamodb.Table('your-table-name')
# Example function to put a single item
def put_item(item):
table.put_item(Item=item)
```
- Loop through your JSON data and call the `put_item` function for each entry.
DynamoDB supports batch write operations, which can be more efficient than writing items one by one.
- Modify your script to use `batch_write_item` to send batches of up to 25 items at a time.
```python
with table.batch_writer() as batch:
for item in items:
batch.put_item(Item=item)
```
After importing the data, verify that the data in DynamoDB matches the original data from BigQuery.
- Run queries in DynamoDB to ensure all records are present and check a sample of the data for accuracy.
- Consider implementing checksums or hash totals to validate data integrity.
By following these steps, you can effectively move data from BigQuery to DynamoDB without relying on third-party connectors or integrations, using native tools and scripting.