Propel combines the speed of ClickHouse with a fully managed, cloud-native serverless platform.

Propel's architecture

Key components of Propel’s architecture

Serverless ClickHouse

The core of Propel’s architecture is a fully-managed, serverless ClickHouse. This eliminates the need for manual server management and provides automatic scaling based on query demands.

SQL Interfaces

Propel supports the standard ClickHouse HTTP interface, allowing you to connect any ClickHouse client or application. Additionally, it offers a PostgreSQL-compatible interface, enabling connection with any BI tool or client that supports PostgreSQL for seamless integration and querying.

Ingestion Layer

Propel includes robust ingestion pipelines that efficiently ingest data from external sources into ClickHouse. This layer handles data synchronization, validation, and insertion to optimize data insertion.

Access Control Policies

This layer handles identity and access management for the Serverless ClickHouse. It ensures that applications have the proper access rights, supporting multi-tenant architectures by controlling data visibility and query permissions at a granular level.

API Layer

An API layer sits in front of the Serverless ClickHouse, translating API calls into ClickHouse queries. This allows developers to interact with their data using familiar API paradigms without writing SQL directly.

Embeddable UI

Propel’s open-source toolkit for building frontend data applications on ClickHouse. It enables rapid development of interactive dashboards, reports, and data visualizations by transforming ClickHouse query results into reusable UI components.

High-availability

Propel is designed with high availability as a core principle, ensuring that your data and services remain accessible and resilient to failures. Here’s how we achieve this:

Multiple Replicas

Your data is automatically replicated across multiple ClickHouse instances, providing redundancy and fault tolerance.

Cross-AZ Distribution

Replicas are distributed across different availability zones (AZs) within a region, mitigating the risk of zone-specific outages.

Automatic Failover

In case of a replica failure, Propel automatically redirects traffic to healthy replicas, ensuring continuous service availability.

Load Balancing

Queries are distributed across multiple replicas to optimize performance and resource utilization.

This multi-layered approach to high availability ensures that your ClickHouse deployment on Propel remains robust and accessible, even in the face of hardware failures or zone-specific issues.

Storage architecture

Propel’s ClickHouse uses a tiered storage architecture to optimize performance and cost-efficiency. This system consists of three primary tiers:

  1. High-speed cache: The fastest storage tier, ideal for extremely hot data and frequently accessed query results.
  2. SSD: Fast storage with limited capacity, ideal for fresh and frequently queried data.
  3. Object Storage: Affordable storage with unlimited capacity, suitable for historical and less frequently accessed data.

The system automatically manages data movement of data between these tiers based on usage patterns. By default, the most frequently accessed data is kept in the high-speed cache, while other data is stored on SSDs, after which it’s moved to object storage.

This tiered approach allows for cost-effective high-performance storage, especially for large datasets with varying access patterns, while ensuring the fastest possible access to the most critical data.