Process sensor data at scale with Quix, Google BigQuery & Python

Why use Quix with Google BigQuery?

Quix is a managed stream processor that works seamlessly with Google BigQuery as a data destination, enabling developers to build, deploy and scale data pipelines that can process streaming data and persist it to BigQuery for analytics and long-term storage.

100% Python

No JVM, wrappers, DSL, or cross-language debugging. Quix provides a Python Streaming DataFrame API that treats data streams as continuously updating tables.

Rich stream processing features

Quix supports stateless and stateful operations, aggregations over hopping and tumbling windows, custom data processing functions, and exactly-once semantics.

Dependable at scale

Quix is scalable, highly available, and fault tolerant. It’s optimized to process high-volume, high-velocity data streams with consistently low latencies.

How do Quix and Google BigQuery work together?

Google BigQuery is Google's serverless, highly scalable data warehouse. It has the following responsibilities:

  • Store large volumes of structured and semi-structured data
  • Enable complex SQL analytics and machine learning
  • Provide fast query performance on massive datasets

Quix is the Python stream processor, and it serves the following purposes:

  • Process streaming data in real-time
  • Transform and prepare data for BigQuery ingestion
  • Write processed data to BigQuery tables efficiently
  • Enable real-time to batch data processing patterns

Together, Quix and BigQuery offer a complete solution for processing streaming data and making it available for analytics at scale.Integrating Quix and BigQuery takes just a few clicks using the Quix BigQuery sink connector. This enables you to:

  • Write processed data directly to BigQuery tables
  • Automatically create tables and schemas
  • Handle data type mappings
  • Manage batch sizes and write frequencies

Once the integration is in place, you can implement your data processing logic using Quix Streams, an open-source technology that combines streaming capabilities with a Python stream processing library. Key capabilities include:

To learn more about Quix Streams and how to use its features, see the Quix Streams tutorials.  

What are the benefits of using Quix alongside Google BigQuery?

Pure Python development experience

BigQuery offers various ways to ingest data (like Cloud Functions, Dataflow, or direct streaming inserts) and Quix offers unique advantages for Python developers working with BigQuery:

  • Pure Python coding and debugging experience
  • Intuitive Streaming DataFrame API that makes it easy to prepare data for BigQuery
  • Seamless integration of Python libraries for data transformation and ML preprocessing

{{testimonial_Ben-Gamble}}

Flexible, comprehensive tooling

BigQuery provides powerful analytics capabilities, including ML features, geospatial analysis, and blazing-fast query performance. Quix complements these capabilities by offering everything needed to prepare and load streaming data:

  • CI/CD support. Integrations with any Git provider (e.g., GitHub, Bitbucket, Azure DevOps) for seamless CI/CD processes.
  • Environment control. Multiple projects and environments (linked to Git) for streamlined environment management.
  • Team collaboration. Multi-user collaboration at project and environment levels through organization and permission management.
  • Infrastructure management. Infrastructure as code (IaC) using Quix YAML (similar to Helm charts) with automated synchronization.
  • Observability and monitoring. Real-time logs, metrics, data explorers, and waveform and table views.
  • Security. Securely manage secrets and sensitive information.
  • Dev tools. Online code editor, Python code templates, and pre-built connectors for various data sources and sinks (e.g., MQTT, InfluxDB, Redis).
  • Pipeline management. Functionality to scale resources, adjust replicas, and manage CPU and memory for your streaming application.
  • Rapid prototyping. An in-built Quix-hosted Apache Kafka broker for testing and fast prototyping.

Local development. CLI tool to create, debug, and run your pipeline locally, and then quickly deploy it to the cloud.

{{testimonial_Carey-McLean}}

Reduced costs and complexity, and faster time to market

Google BigQuery is a fully managed data warehouse, and Quix is a fully managed stream processor. Together, they remove the complexity of handling streaming-to-warehouse data pipelines:

  • No need to manage streaming ingestion infrastructure
  • Optimized data loading patterns to reduce BigQuery costs
  • Predictable pricing and reduced operational overhead
  • Focus on building analytics solutions rather than managing infrastructure

{{testimonial_Christoph-Dietrich}}

Proven scalability and reliability 

BigQuery is renowned for its ability to handle petabyte-scale analytics with impressive performance. Quix complements this with reliable streaming data processing:

  • Highly scalable streaming processing
  • Exactly-once delivery to BigQuery tables
  • Efficient batch loading to optimize BigQuery costs
  • Consistent low-latency performance

{{testimonial_Fernando-Ayuso}}

What kind of use cases can I enable with Google BigQuery and Quix?

By leveraging BigQuery as your data warehouse and Quix as your Python stream processor, you can build powerful analytics solutions that combine real-time processing with historical analysis:

  • Real-time analytics dashboards with historical context
  • Machine learning model training and online prediction
  • Customer behavior analysis combining streaming and historical data
  • IoT data processing and analytics
  • Real-time ETL into your data warehouse
  • Hybrid batch and streaming data processing pipelines