Want a managed ClickHouse? Here are some options

A managed ClickHouse service can speed up your development and reduce the infrastructure you need to set up and maintain. But what managed ClickHouse service should you choose? Here are your options.

Want a managed ClickHouse? Here are some options

ClickHouse is trending. 

The open source DBMS currently has over 36K GitHub stars and rising, and it seems like everybody is adopting it for real-time analytics use cases.

Among popular open-source databases, ClickHouse has experienced incredible growth.

There's good reason for the hype. ClickHouse is arguably the fastest OLAP database in the world. Its column-oriented storage format and SQL engine make it tremendously effective as a true DBMS for handling large-scale analytics on streaming and event-driven data architectures.

But.

(There's always a but.)

ClickHouse is known for its complexity. With great power comes great responsibility, and some people simply don't want to be responsible for setting up and maintaining a ClickHouse cluster.

Self-hosting ClickHouse means learning all the ins and outs of maintaining the powerful database.

That doesn't mean you shouldn't use ClickHouse. You absolutely should, especially if you are trying to build scalable real-time, user-facing analytics over any kind of time series data.

But unless you intend to hunker down and learn the deep internals of this powerful but mercurial database, you probably want some help, likely in the form of a managed ClickHouse service.

And even if you can learn the ClickHouse deep magic, you still might want a managed service for no other reason than you don't want to maintain infra. That's a perfectly valid reason to choose a managed ClickHouse service over self-hosting.

If managed ClickHouse is what you're after, skip ahead to see some options and how they compare. If you're not convinced that a managed service is for you, keep reading.

Why choose managed ClickHouse over self-hosted ClickHouse?

For the same reason you choose "buy" over "build" in any other case: time and money. Building things takes time and costs money. You buy off the shelf to get the economies afforded by someone who has been there before you.

But let's dig a bit deeper into what you actually need to build and maintain for an effective self-hosted ClickHouse:

  • High Availability. High Availability (HA) is critical for production databases. If a cluster fails, you need a backup, and you need to gracefully manage failover. To have a high-availability ClickHouse, you need at minimum 2 ClickHouse instances + a ZooKeeper implementation + a load balancer.
  • Upgrades. ClickHouse is frequently upgraded (stable packages are released roughly every month, and long-term support (LTS) packages roughly twice a year). Upgrading the database unlocks new features and is required for security reasons, but it also introduces regressions.

    When you upgrade a ClickHouse cluster, you have to consider all running queries, read and write paths, materialized views being populated, etc. This is very non-trivial.
  • Write/Read Services. ClickHouse is often used in fast-paced, high-scale data applications involving very high ingest throughput and high query concurrency demanding sub-second latency response times.

    When using ClickHouse, you have to consider ancillary services to the "left and right" of the database. How will you handle streaming ingestion when ClickHouse prefers to batch writes? How will you expose the query engine to your applications?

    These things take time to build and money to host.
  • Observability. Databases don't exist in a vacuum. They need to be monitored, and ClickHouse is no exception.

There's more here. ClickHouse is complex, the learning curve is steep, and it may take too long to fully harness its power, especially for smaller engineering teams.

Current options for Managed ClickHouse

Fortunately for those who don't want the headaches of scaling their own ClickHouse cluster, there are a growing number of managed ClickHouse options. You can find an exhaustive list further below, but three of the most popular managed ClickHouse products currently on the market are (in no particular order):

  • ClickHouse Cloud
  • Altinity
  • Tinybird

Below you'll find a quick comparison of each of the three in terms of use cases, developer experience, cost, and critical features.

ClickHouse Cloud

The "official" managed ClickHouse, created by ClickHouse, Inc., the maintainers of the OSS ClickHouse project.

Highlights

  • Available on AWS, GCP, and Azure
  • Automated scaling on prescribed compute range
  • Automated replication and backups
  • Automatic service idling when inactive
  • Low data storage costs backed by cloud-native architecture and object storage
  • Interactive SQL Console on the Web UI
  • Visualize any query result as a chart
  • Terraform provider for automating infrastructure management
  • Direct access to the ClickHouse database
  • ClickPipes for managed ingestion from a handful of streaming sources
  • Several clients for common languages to build your backend over ClickHouse
  • SOC 2 Type II compliant

Cost

Pricing for ClickHouse Cloud is based on your chosen plan and compute size. 

Development plans are pinned at 16GiB 2vCPU and range from $1 to $193 per month depending on storage ($35/TB compressed) and compute ($0.22/active hour).

Production Plans can include from 24 GiB 6vCPU to 3600GiB 960 vCPU compute. Pricing is based on storage (~$50/TB compressed) and compute ($0.75/compute unit-hr) with costs ranging from ~$500 per month to $100,000 depending on cloud, compute units, and storage.

A screenshot of ClickHouse Cloud's pricing calculator
Pricing for ClickHouse Cloud is based on storage and compute units consumed. Costs for a production-grade cluster can range from $200 - $100K+ per month.

Dedicated infrastructure is also available at customized prices.

You can check pricing for ClickHouse Cloud and calculate your price based on storage and compute here.

Developer Experience

ClickHouse Cloud is a classic "database-as-a-service", providing a clean interface to a hosted database solution. The developer experience demands a level of ClickHouse expertise, as most of the non-infrastructure database settings are not abstracted. Actions like creating, renaming, or dropping tables, populating materialized views, etc. require knowledge of ClickHouse's flavor of SQL.

A screenshot of ClickHouse Cloud's SQL Console
ClickHouse Cloud provides a classic read/write SQL interface to the database. You can perform most database operations directly from this console

ClickHouse Cloud also boasts a solid amount of integrations, both managed and supported through community development. The recent introduction of ClickPipes allows for streaming data ingestion from popular sources like Apache Kafka, Confluent, Postgres + Debezium CDC, and others without setting up additional infrastructure. 

A screenshot of ClickHouse Cloud's streaming ingestion integrations, called ClickPipes.
ClickHouse Cloud recently introduced ClickPipes, which are managed connectors for various streaming data sources.

For developers keen on building an analytics API service on top of ClickHouse, ClickHouse Cloud recently launched query endpoints in beta. With this feature, you can create static HTTP endpoints from saved queries, however these don't benefit from the same performance characteristics as the underlying database.

A screenshot of a ClickHouse Cloud SELECT query published as a beta endpoint
You can publish saved SELECT queries as API Endpoints in beta, but the performance of these queries was not very good in our tests.

Takeaways

ClickHouse Cloud is a flexible and performant way to host a ClickHouse database on managed infrastructure. It provides great tools for directly interfacing with the database itself, with some additional infrastructure features (ClickPipes, endpoints, etc.) that extend beyond the database itself. 

Altinity

Altinity.Cloud provides managed ClickHouse deployments on both hosted cloud and VPC. In addition, Altinity offers ClickHouse consulting services and maintains several open source ClickHouse projects such as their Kubernetes Operator for ClickHouse.

A screenshot of Altinity's website
Altinity.Cloud provides a supported, 100% open source ClickHouse experience on hosted infrastructure

Highlights

  • Available on AWS, GCP, and Azure or via VPC on your own cloud
  • 24/7 ClickHouse expert support services
  • 100% open source ClickHouse - no forks or add-ons
  • Dedicated Kubernetes environment for every account
  • Choose any VM or storage type
  • Scale compute capacity up/down and extend storage without downtime 
  • Add shards and replicas to running clusters
  • Built-in availability and backups
  • SOC 2 Type II certified

Cost

Unlike ClickHouse Cloud, Altinity does not charge on a usage-based model. Altinity.Cloud is priced based on allocated compute and storage (non-VPC) regardless of usage. Amongst these three, pricing from Altinity.Cloud is the most predictable, as it will only change based on allocation, not usage.

Pricing is based on storage ($220 - $374/TB per month) and allocated compute (instance type + number of clusters) based on activity.

For example, a development instance with 20% usage on a 16GiB 4 vCPU GCP cluster with 100 GB would cost about $110 per month( ~$75/month for compute, $22/month for storage, and ~$15/month for backups).

A production instance (100% active) on a 3-cluster m6i.8xlarge 32 vCPUs 128GB RAM instance in AWS us-west-2 with 1 TB of storage would cost about $8,500 per month (~$7,600 compute, ~$660 storage, ~$260 for backups).

A screenshot of Altinity.Cloud pricing calculator
Pricing for Altinity.Cloud is based on storage and reserved compute capacity, not usage. Costs can range from a few hundred dollars to tens of thousands per month

You can get more info on Altinity.Cloud pricing from their pricing calculator.

Developer Experience

Of the three managed ClickHouses explored here, Altinity.Cloud will provide the most "raw" ClickHouse experience. Altinity is certainly for the ClickHouse enthusiast who wants to deeply understand the database and handle most database operations (with support, of course).

You'll get amazing support with dedicated response time SLAs; Altinity's support engineers are known for their ClickHouse expertise and 24/7 support services to help you manage your instance.

Altinity provides 100% open-source ClickHouse, hosted. There are no ancillary services or infrastructure to help manage ingestion, visualization, or application/backend development. This is a pure, hosted ClickHouse.

P.S.
Altinity does not offer a "self-serve" onboarding experience. Signing up for Altinity.Cloud requires their review and approval before you start building. You'll be asked to book an onboarding meeting, which reflects Altinity's supported approach compared to the self-serve experience offered by both ClickHouse Cloud and Tinybird.

Takeaways

Altinity.Cloud is great for those who want to learn and own a ClickHouse database - either on managed infrastructure or in VPC - with support from some of the best ClickHouse practitioners in the world. It's not for fast-moving developers who want a ClickHouse abstraction; it's built for enterprise-level engineers who know - or want to commit to learning with support - how to manage this database at scale.

Tinybird

Unlike ClickHouse Cloud and Altinity.Cloud (among other managed ClickHouses) Tinybird isn't a traditional managed ClickHouse. It's not simply hosted storage + compute with a nice web UI for interacting with the underlying database client.

Rather, Tinybird is a developer data platform for building analytics on top of the open source ClickHouse. In addition to providing the things you'd expect from a managed database - hosting, auto-scaling, automatic upgrades, observability, high availability SLAs, etc. - Tinybird provides services to the "left and right" of the database to support data ingestion and application integration.

Perhaps the most well-known benefit of Tinybird is its "instant API" experience. You can instantly publish any SQL query as a dynamic and scalable REST Endpoint complete with OAS3.0 specs. Unlike ClickHouse Cloud's beta endpoints, Tinybird's API Endpoints have been an integral part of the platform since its first public beta, and are well-supported at scale with minimal latency. For those who want to avoid building a backend service on top of ClickHouse, Tinybird can provide a huge advantage.

Highlights

  • Same database performance as ClickHouse Cloud and Altinity
  • Managed data source connectors for Kafka, BigQuery, Snowflake, S3, DynamoDB, etc.
  • A managed HTTP streaming endpoint
  • Managed write service for streaming ingestion
  • Managed import/export/transform job queues
  • A notebook-style query interface to break up complex queries into manageable nodes
  • A managed API service
  • Slack support community
  • Static access tokens for resource management
  • Signed JWTs for API Endpoints with customizable scopes and rate limits
  • Single-click workflow to publish SQL queries as scalable REST Endpoints with automatically generated OpenAPI specs and dynamic query parameters.
  • A built-in charting library
  • Automatically generated observability tables that log every write, read, and job
  • A plain text file format to define data projects as code
  • A full-featured CLI and git integration to manage data projects in production with CI/CD
  • Workspaces to group resources and enable role-based collaboration
  • SOC 2 Type II Compliant

Cost

Tinybird has a "free forever" plan, with nearly full-featured access to the service with 10 GB of included storage (compressed) and 1,000 daily requests to published API Endpoints included.

Tinybird's Pro Plan is priced based purely on usage. Rather than selecting desired compute sizes, you simply pay $0.34/GB (compressed) per month and $0.07/GB of processed data. The infrastructure scales transparently to meet demand.

Tinybird offers Enterprise plans with volume discounts, infrastructure-based credits, optional dedicated infrastructure, and support/availability SLAs.

A screenshot of Tinybird's pricing page.
Tinybird has the only unlimited free plan of the three managed ClickHouses evaluated here. The Pro plan pricing is based on storage and processed data, rather than compute units. Enterprise plans - which can include dedicated infrastructure - can be based on storage/compute quotas or infrastructure credits.

More info is available on Tinybird's public pricing page and billing docs.

Developer Experience

Of all the managed ClickHouse products, Tinybird provides the highest level of abstraction and the most thoughtful developer experience.

It exposes certain ClickHouse features, like the SQL language and the definition of table schemas, but it does not provide direct access to the underlying ClickHouse database. For those who want a pure ClickHouse experience, this may be a turnoff. But it also means that it's much harder to brick your database with Tinybird.

Tinybird is well known for its incredible developer experience. The core Tinybird experience - from ingesting data to integrating a real-time API into your production app, can be accomplished in just a few minutes.

A screenshot of Tinybird's SQL Console, called Pipes
Tinybird provides a read-only SQL interface via Pipes, which allow you to break up complex SQL queries into more manageable nodes.

For those who want access to the performance of ClickHouse without having to learn how to manage the database itself, Tinybird is a boon. There's still some need to learn elements of ClickHouse, for example its SQL syntax and how materialized views work on the database, but most of the database management is abstracted into UI, CLI, and API.

A screenshot of Tinybird's Data Source connectors.
Tinybird provides managed ingestion infrastructure for popular streaming and batch data sources, as well as the Events API, an HTTP streaming endpoint that can handle 1,000 requests per second out of the box

Perhaps the biggest differentiator for Tinybird in its developer experience is the services it provides outside of the database, namely API hosting, managed job queues, its HTTP streaming endpoint, and managed ingestion connectors and infrastructure, and its git integration for automated CI/CD workflows.

These features remove the burden of setting up additional infrastructure on top of the database. This results in a great serverless experience for those who want a scalable analytics backend without worrying about infrastructure, compute sizes, etc.

A screenshot of Tinybird's observability UI for API endpoints
Every query you write in Tinybird can be published as a dynamic, scalable REST API complete with OpenAPI specs. Tinybird includes API observability out of the box both within the UI and as queryable lo tables.

Takeaways

Put simply, Tinybird is for those who want the performance of ClickHouse without having to learn and scale another database. It's made for developers who want to ship use cases that benefit from ClickHouse's speed without needing to spin up the ingestion pipelines, the database cluster, and the backend to support an analytics API.

You can learn more about the distinctions between Tinybird and ClickHouse here.

A list of managed ClickHouse services

Last updated August 2024

  • Tinybird
  • ClickHouse Cloud
  • Altinity
  • DoubleCloud ClickHouse as a Service
  • Aiven Managed ClickHouse
  • Yandex Cloud Managed Service for ClickHouse
  • Elestio Managed ClickHouse
  • Nebius ClickHouse Cluster
  • Propel Data

How to choose a managed ClickHouse service

Choosing the right managed ClickHouse depends on your appetite for learning ClickHouse and how much abstraction you want. Every managed ClickHouse mentioned here will provide a comparable level of performance when properly configured. The difference will be in the features provided, the pricing structure, and the level of abstraction on top of the database.

Feature ClickHouse Altinity Tinybird
Multi-cloud availability
Bring Your Own Cloud Beta X
Usage-based Pricing Limited
Infrastructure-based Pricing
Free Trial 30 days 30 days Unlimited
Self-Service Startup X
High-Availability
Automatic Backups
Automatic Database Upgrades X
Collaborative Workspaces X X
IP White/Blacklisting X
Managed Streaming Connectors Limited
Managed Batch Connectors X X
Web UI and SQL Console
CLI X X
API
Connect to ClickHouse Client X
Managed HTTP Streaming X X
Managed Import/Export Queues X X
Terraform Provider X
Hosted API Endpoints Beta X
Endpoint Token Management Beta X
Support for Custom JWTs X X
Native Charting Library X X
Git integration X X
SOC 2 Type II Certified

Services such as Altinity.Cloud provide a very pure ClickHouse experience on hosted infrastructure. Some value this flexibility and are willing to spend time understanding the database itself.

ClickHouse Cloud can provide a nice middle ground for developers who want slightly more abstraction but still want full access to the underlying database. ClickHouse Cloud is great - for example - in conjunction with business intelligence tools that can directly access the database client and run queries for visualization. But, if your goal is to build an app backend on top of ClickHouse, you'll still have to manage that yourself.

Tinybird is for developers who want to ship user-facing analytics features to production, faster. It comes with a higher level of abstraction that limits direct database access, but in doing so it reduces speed to market when building on top of ClickHouse. Tinybird offers additional infrastructure and services that other managed ClickHouse options do not, extending the functionality beyond the database while still harnessing ClickHouse's performance. 

To get started with Tinybird, you can sign up for free and start building.