Advanced guides

[Edit this page](https://github.com/ClickHouse/clickhouse-docs/blob/main/docs/guides/developer/index.md)

This section contains the following advanced guides:

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Guide Description|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | [Alternative Query Languages](/docs/guides/developer/alternative-query-languages) A guide on alternative supported dialects and how to use them. Provides examples of queries in each dialect.|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | [Cascading Materialized Views](/docs/guides/developer/cascading-materialized-views) A guide on how to create Materialized Views and cascade them together, combine multiple source tables into a single destination table. Contains an example of using cascading materialized views to aggregate data by month and year for a group of domain names.|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | [Debugging memory issues](/docs/guides/developer/debugging-memory-issues) A guide on how to debug memory issues within ClickHouse.|  |  |  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | [Deduplicating Inserts on Retries](/docs/guides/developer/deduplicating-inserts-on-retries) A guide on how to handle situations where you might retry failed inserts.|  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | [Deduplication strategies](/docs/guides/developer/deduplication) A guide which dives into data deduplication, a technique for removing duplicate rows from your database. Explains differences from primary key-based deduplication in OLTP systems, ClickHouse's approach to deduplication and how to handle duplicate data scenarios within your ClickHouse queries.|  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | [Filling gaps in time-series data](/docs/guides/developer/time-series-filling-gaps) A guide which provides insights into ClickHouse's capabilities for handling time-series data, including techniques for filling gaps in data to create a more complete and continuous representation of time-series information.|  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | | [Manage Data with TTL (Time-to-live)](/docs/guides/developer/ttl) A guide discussing how to use the `WITH FILL` clause to fill gaps in time-series data. It covers how to fill gaps with 0 values, how to specify a starting point for filling gaps, how to fill gaps up to a specific end point, and how to interpolate values for cumulative calculations.| [Stored procedures & query parameters](/docs/guides/developer/stored-procedures-and-prepared-statements) A guide explaining that ClickHouse doesn't support traditional stored procedures, and provides recommended alternatives including User-Defined Functions (UDFs), parameterized views, materialized views, and external orchestration. Also covers query parameters for safe parameterized queries (similar to prepared statements).|  |  |  |  | | --- | --- | --- | --- | | [Understanding query execution with the Analyzer](/docs/guides/developer/understanding-query-execution-with-the-analyzer) A guide which demystifies ClickHouse query execution by introducing the analyzer tool. It explains how the analyzer breaks down a query into a series of steps, allowing you to visualize and troubleshoot the entire execution process for optimal performance.|  |  | | --- | --- | | [Using JOINs in ClickHouse](/docs/guides/joining-tables) A guide that simplifies joining tables in ClickHouse. It covers different join types (`INNER`, `LEFT`, `RIGHT`, etc.), explores best practices for efficient joins (like placing smaller tables on the right), and provides insights on ClickHouse's internal join algorithms to help you optimize your queries for complex data relationships. | | | | | | | | | | | | | | | | | | | | | |

Was this page helpful?