Get started with the ClickHouse integrations
ClickHouse is a high-performance, column-oriented SQL database management system (DBMS) for online analytical processing (OLAP). The Aspire ClickHouse integration provides a way to connect to existing ClickHouse instances, or create new instances from the clickhouse/clickhouse-server container image.
In this introduction, you'll see how to install and use the Aspire ClickHouse integrations in a simple configuration. If you already have this knowledge, see ClickHouse Hosting integration for full reference details.
Note
To follow this guide, you must have created an Aspire solution to work with. To learn how to do that, see Build your first Aspire app.
Set up hosting integration
To begin, install the Aspire ClickHouse Hosting integration in your Aspire AppHost project. This integration allows you to create and manage ClickHouse instances from your Aspire hosting projects:
dotnet add package Aspire.Hosting.ClickHouseNext, in the AppHost project, create instances of ClickHouse server and database resources, then pass the database to the consuming client projects:
Tip
This is the simplest implementation of ClickHouse resources in the AppHost. There are many more options you can choose from to address your requirements. For full details, see ClickHouse Hosting integration.
Use the integration in client projects
Now that the hosting integration is ready, the next step is to install and configure the client integration in any projects that need to use it.
Set up client projects
Use injected ClickHouse properties
In the AppHost, when you used the WithReference method to pass a ClickHouse database resource to a consuming client project, Aspire injects several configuration properties that you can use in the consuming project.
Aspire exposes each property as an environment variable named [RESOURCE]_[PROPERTY]. For instance, the Host property of a resource called clickhousedb becomes CLICKHOUSEDB_HOST.
Tip
The full set of properties that Aspire injects depends on the ClickHouse resource configuration. For more information, see Properties of the ClickHouse resources.
Use ClickHouse resources in client code
Next steps
Now, that you have an Aspire app with ClickHouse integrations up and running, you can use the following reference documents to learn how to configure and interact with the ClickHouse resources:
<LinkCard Title="Understand the ClickHouse hosting integration"
<LinkCard Title="Understand the ClickHouse client integration"