BigQuery
This guide is for BigQuery. See also: Snowflake | Databricks
Introduction
The ROX BigQuery Integration enables customers to share live data directly from Google BigQuery to ROX using Analytics Hub. This integration provides secure, governed access to your data without copying or moving it—you retain full control while ROX gains real-time access to your datasets.
Key Benefits
Benefit | Description |
|---|---|
Full Control | Data stays in your project. You can revoke access at any time. |
Zero-Copy Architecture | No data duplication—ROX queries your live data via linked datasets. |
Real-Time Access | ROX always sees the latest data without ETL or batch jobs. |
Secure by Default | All access governed by Google Cloud IAM and Analytics Hub permissions. |
ROX Account Information
Contact your ROX account team to obtain the ROX service account email required for setting up the Analytics Hub exchange.
Setup Instructions
Step 1: Create an Analytics Hub Exchange
- In the Google Cloud Console, navigate to BigQuery → Analytics Hub
- Click Create Exchange
- Select the Project and Region where your dataset lives
Important: The Exchange region must match your dataset's region. Choose the region where the data you want to share is located.
Step 2: Add ROX as a Subscriber
- In the Exchange configuration, locate the Subscribers section
- Add the ROX service account (provided by your ROX account team) to the Subscribers list
- Save the Exchange configuration
Step 3: Create a Listing
- Click into your newly created Exchange
- Click Create Listing
- Select the dataset you want to share with ROX
Note: Only datasets in the same region as the Exchange will appear in the selection list. If your dataset doesn't appear, verify the regions match.
- Complete the naming and configuration prompts
- Publish the listing
Step 4: Notify ROX
Once the listing is published, send the following to your ROX account team:
- Your Google Cloud Project ID
- Exchange name and region
- Listing name
- Brief description of shared datasets and their schema
Choosing What to Share
Object Type | When to Use |
|---|---|
Tables | Direct access to raw data. Use when ROX needs full table access. |
Views | Pre-filtered or aggregated data. Use to limit columns, apply row filters, or join multiple tables. |
Authorized Views | Recommended for sensitive data. Provides row-level or column-level access control. |
Best Practice: Use Authorized Views when sharing PII or financial data to enforce fine-grained access controls.
Information to Provide to ROX
After setting up the listing, send the following to your ROX account team:
- Your Google Cloud Project ID
- Exchange name and region
- Listing name
- Brief description of shared datasets and their schema
Prerequisites
Requirement | Details |
|---|---|
IAM Role | roles/analyticshub.admin or roles/analyticshub.publisher on the project |
Dataset Location | Dataset must be in a region supported by Analytics Hub |
BigQuery API | BigQuery and Analytics Hub APIs must be enabled on your project |
Technical Considerations
Security and Compliance
- All data sharing respects your existing Google Cloud IAM policies
- ROX can only access datasets explicitly shared via Analytics Hub listings
- Audit logs available in Cloud Logging for all access events
Performance
- Linked datasets provide direct query access with no data movement
- ROX queries run on ROX's BigQuery slots, not yours
- No impact on your project's query performance or quota
Data Freshness
- Real-time — ROX always queries your live data directly
- No replication delay or sync schedules
Troubleshooting
Issue | Solution |
|---|---|
Dataset not appearing when creating listing | Verify the dataset region matches the Exchange region |
ROX cannot see the listing | Confirm the ROX service account was added as a Subscriber |
Permission denied errors | Verify your IAM role includes Analytics Hub publisher permissions |
Listing not visible to ROX | Ensure the listing is published (not in draft state) |