Resource tour

[Edit this page](https://github.com/ClickHouse/clickhouse-docs/blob/main/docs/cloud/onboard/03_tune/resource_tour.md)

This article is intended to provide you with an overview of the resources available
to you in the docs to learn how to get the most out of your ClickHouse Cloud deployment.
Explore resource organised by the following topics:

- [Query optimization techniques and performance tuning](#query-optimization)
- [Monitoring](#monitoring)
- [Security best practices and compliance features](#security)
- [Cost optimization and billing](#cost-optimization)

Before diving into more specific topics, we recommend you start with our general
ClickHouse best practice guides which cover general best practices to follow when
using ClickHouse:

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Page Description|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | [Choosing a Primary Key](/docs/best-practices/choosing-a-primary-key) How to select primary keys that maximize query performance and minimize storage overhead.|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | [Select Data Types](/docs/best-practices/select-data-types) Choose optimal data types to reduce memory usage, improve compression, and accelerate queries.|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | [Use Materialized Views](/docs/best-practices/use-materialized-views) Leverage materialized views to pre-aggregate data and dramatically speed up analytical queries.|  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | [Minimize and Optimize JOINs](/docs/best-practices/minimize-optimize-joins) Best practices for using ClickHouse's `JOIN` capabilities efficiently.| [Choosing a Partitioning Key](/docs/best-practices/choosing-a-partitioning-key) Select partitioning strategies that enable efficient data pruning and faster query execution.|  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | [Selecting an Insert Strategy](/docs/best-practices/selecting-an-insert-strategy) Optimize data ingestion throughput and reduce resource consumption with proper insert patterns.|  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | | [Data Skipping Indices](/docs/best-practices/use-data-skipping-indices-where-appropriate) Apply secondary indices strategically to skip irrelevant data blocks and accelerate filtered queries.|  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | | [Avoid Mutations](/docs/best-practices/avoid-mutations) Design schemas and workflows that eliminate costly `UPDATE`/`DELETE` operations for better performance.| [Avoid OPTIMIZE FINAL](/docs/best-practices/avoid-optimize-final) Prevent performance bottlenecks by understanding when `OPTIMIZE FINAL` hurts more than it helps.| [Use JSON where appropriate](/docs/best-practices/use-json-where-appropriate) Balance flexibility and performance when working with semi-structured JSON data in ClickHouse. | | | | | | | | | | | | | | | | | | | | | |

## Query optimization techniques and performance tuning[​](#query-optimization "Direct link to Query optimization techniques and performance tuning")