From a8b79e52f13f35c03f4ded736081a2a02758ce76 Mon Sep 17 00:00:00 2001 From: Kuba Kaflik Date: Mon, 14 Apr 2025 13:18:20 +0200 Subject: [PATCH 1/5] Knowledge base for MSK multi-VPC setup for RPE --- .../clickpipes/aws-privatelink.md | 8 +- ...s-privatelink-setup-for-msk-clickpipes.mdx | 57 + static/knowledgebase_toc.json | 2012 ++++++----------- 3 files changed, 811 insertions(+), 1266 deletions(-) create mode 100644 knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx diff --git a/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md b/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md index 3f6cde4acd9..d918a94787a 100644 --- a/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md +++ b/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md @@ -1,8 +1,8 @@ --- -sidebar_label: 'AWS PrivateLink for ClickPipes' -description: 'Establish a secure connection between ClickPipes and a data source using AWS PrivateLink.' +sidebar_label: "AWS PrivateLink for ClickPipes" +description: "Establish a secure connection between ClickPipes and a data source using AWS PrivateLink." slug: /integrations/clickpipes/aws-privatelink -title: 'AWS PrivateLink for ClickPipes' +title: "AWS PrivateLink for ClickPipes" --- import cp_service from '@site/static/images/integrations/data-ingestion/clickpipes/cp_service.png'; @@ -63,6 +63,8 @@ Update your MSK cluster policy and add `072088201116` to the allowed principals See AWS guide for [attaching a cluster policy](https://docs.aws.amazon.com/msk/latest/developerguide/mvpc-cluster-owner-action-policy.html) for more details. ::: +Follow our [MSK setup guide for ClickPipes](/knowledgebase/aws-privatelink-setup-for-msk-clickpipes) to set up the connection. + ### VPC endpoint service {#vpc-endpoint-service} VPC service is another approach to share your data source with ClickPipes. diff --git a/knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx b/knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx new file mode 100644 index 00000000000..dc3c34d5be9 --- /dev/null +++ b/knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx @@ -0,0 +1,57 @@ +--- +title: AWS PrivateLink setup to expose MSK for ClickPipes +description: Setup steps to expose a private MSK via MSK multi-VPC connectivity to ClickPipes. +date: 2024-11-27 +tags: ['Security and Authentication', 'Managing Cloud'] +keywords: ['AWS PrivateLink', 'MSK', 'ClickPipes'] +--- + +{frontMatter.description} +{/* truncate */} + +## Overview {#overview} + +This guide will get you started with setting up a **MSK multi-VPC** to be used with [ClickPipes reverse private endpoint](/integrations/data-ingestion/clickpipes/aws-privatelink.md#msk-multi-vpc). + +## Requirements {#requirements} + +MSK cluster VPC must be located in one of our ClickPipes regions. See [ClickPipes regions](/integrations/data-ingestion/clickpipes/aws-privatelink.md#aws-privatelink-regions) for the list of supported regions. + +## Enabling multi-VPC connectivity {#enabling-multi-vpc-connectivity} + +1. Navigate to the MSK cluster. + - Choose "Clusters" from the left navigation pane in the Amazon MSK console. + - Select the specific MSK cluster you want to configure for multi-VPC connectivity. +2. Enable MSK multi-VPC connectivity + - In the **Connectivity** tab, find the **Multi-VPC connectivity** section. + - Click on **Edit**. + - Enable the **Turn-on MSK multi-VPC connectivity** option. + - Follow the instructions +3. Add ClickPipes account principal into a cluster’s policy + - Navigate to the **Configuration** tab. + - Click on **Edit** in the **Cluster policy** section. + - Include `arn:aws:iam::072088201116:root` in the **IAM policy**. Example: + ```json + { + "Version": "2012-10-17", + "Statement": [ + { + "Effect": "Allow", + "Principal": { + "AWS": [ + "arn:aws:iam::072088201116:root" + ] + }, + "Action": [ + "kafka-cluster:Connect", + "kafka-cluster:DescribeCluster", + "kafka-cluster:ListClusters" + ] + } + ] + } + ``` + +## Creating reverse private endpoint {#creating-reverse-private-endpoint} + +Follow reverse private endpoint creation steps in the [ClickPipes documentation](/integrations/data-ingestion/clickpipes/aws-privatelink.md#creating-clickpipe). diff --git a/static/knowledgebase_toc.json b/static/knowledgebase_toc.json index d648d5660b4..3f6365f5afc 100644 --- a/static/knowledgebase_toc.json +++ b/static/knowledgebase_toc.json @@ -1,1265 +1,751 @@ [ - { - "title": "Profiling ClickHouse with LLVM's XRay", - "date": "2024-11-13", - "description": "Learn how to profile ClickHouse using LLVM's XRay instrumentation profiler, visualize traces, and analyze performance.", - "tags": [ - "Performance and Optimizations", - "Tools and Utilities" - ] - }, - { - "date": "2023-06-07", - "title": "Why is ClickHouse Keeper recommended over ZooKeeper?", - "description": "ClickHouse Keeper improves upon ZooKeeper with features like reduced disk space usage, faster recovery, and less memory consumption, offering better performance for ClickHouse clusters.", - "tags": [ - "Core Data Concepts" - ], - "keywords": [ - "ClickHouse Keeper", - "ZooKeeper" - ] - }, - { - "title": "Let's calculate pi using SQL", - "description": "It's Pi Day! Let's calculate pi using ClickHouse SQL", - "date": "2023-03-14", - "tags": [ - "Use Cases" - ], - "keywords": [ - "Calculate Pi", - "SQL" - ] - }, - { - "title": "How do I contribute code to ClickHouse?", - "description": "ClickHouse is an open-source project developed on GitHub. As customary, contribution instructions are published in CONTRIBUTING file in the root of the source code repository.", - "date": "2021-09-01", - "tags": [ - "Community" - ], - "keywords": [ - "Contributing", - "Opensource" - ] - }, - { - "date": "2023-05-02", - "title": "When are TTL rules applied, and do we have control over it?", - "description": "TTL rules in ClickHouse are eventually applied, and you can control when they are executed using the `merge_with_ttl_timeout` setting. Learn how to force TTL application and manage background threads for TTL execution.", - "tags": [ - "Core Data Concepts" - ], - "keywords": [ - "TTL" - ] - }, - { - "title": "How to Configure Settings for a User in ClickHouse", - "description": "Learn how to define settings in ClickHouse for individual queries, client sessions, or specific users using `SET` and `ALTER USER` commands.", - "date": "2023-03-01", - "tags": [ - "Settings" - ], - "keywords": [ - "SET", - "ALTER", - "User", - "Query", - "Session" - ] - }, - { - "date": "2024-04-17", - "description": "Learn how to search across nodes for tables with a wildcard.", - "title": "Searching across nodes for tables with a wildcard", - "tags": [ - "Deployments and Scaling" - ], - "keywords": [ - "search nodes", - "query_log", - "wildcard", - "table prefix" - ] - }, - { - "title": "How to Check Users Assigned to Roles and Vice Versa", - "description": "Learn how to query ClickHouse's `system.role_grants` to find users assigned to roles and roles assigned to specific users.", - "date": "2023-09-07", - "tags": [ - "Server Admin", - "System Tables", - "Managing Cloud" - ], - "keywords": [ - "User Roles" - ] - }, - { - "title": "What if I have a problem with encodings when using Oracle via ODBC?", - "description": "If you use Oracle as a source of ClickHouse external dictionaries via Oracle ODBC driver, you need to set the correct value for the `NLS_LANG` environment variable in `/etc/default/clickhouse`.", - "date": "2022-04-22", - "tags": [ - "Native Clients and Interfaces" - ], - "keywords": [ - "Oracle", - "ODBC" - ] - }, - { - "title": "How to Use Parameterized Views in ClickHouse", - "description": "Learn how to create and query parameterized views in ClickHouse for dynamic data slicing based on query-time parameters.", - "date": "2023-08-01", - "tags": [ - "Use Cases" - ], - "keywords": [ - "Parameterized Views" - ] - }, - { - "title": "Why can't I see my data in a dictionary in ClickHouse Cloud?", - "description": "There is an issue where data in dictionaries may not be visible immediately after creation.", - "date": "2024-04-12", - "tags": [ - "Managing Cloud", - "Data Modelling" - ], - "keywords": [ - "Dictionaries" - ] - }, - { - "date": "2023-10-26", - "title": "Can you use ClickHouse for vector search?", - "description": "Learn how to use ClickHouse for vector search, including storing embeddings and searching with distance functions like cosine similarity.", - "tags": [ - "Use Cases", - "Concepts" - ], - "keywords": [ - "Vector Search" - ] - }, - { - "title": "How to insert all rows from one table to another?", - "description": "Knowledgebase article on how to insert all rows from one table to another.", - "date": "2024-12-17", - "tags": [ - "Data Ingestion" - ], - "keywords": [ - "Insert from a table" - ] - }, - { - "date": "2023-10-25", - "title": "About Quotas and Query complexity", - "tags": [ - "Managing Cloud" - ], - "keywords": [ - "Quotas", - "Query Complexity" - ], - "description": "Quotas and Query Complexity are powerful ways to limit and restrict what users can do in ClickHouse. This KB article shows examples on how to apply these two different approaches." - }, - { - "title": "Does ClickHouse support multi-region replication?", - "description": "The short answer is yes. However, we recommend keeping latency between all regions/datacenters in two-digit range, otherwise write performance will suffer as it goes through distributed consensus protocol.", - "date": "2022-04-22", - "tags": [ - "Deployments and Scaling", - "Managing Cloud" - ] - }, - { - "title": "Synchronous data reading", - "description": "The new setting `allow_asynchronous_read_from_io_pool_for_merge_tree` allows the number of reading threads (streams) to be higher than the number of threads in the rest of the query execution pipeline.", - "date": "2023-03-01", - "tags": [ - "Settings", - "Performance and Optimizations" - ], - "keywords": [ - "Synchronous", - "Asynchronous", - "Data Reading" - ] - }, - { - "title": "Why not use something like MapReduce?", - "description": "We can refer to systems like MapReduce as distributed computing systems in which the reduce operation is based on distributed sorting. The most common open-source solution in this class is Apache Hadoop.", - "date": "2021-09-01", - "tags": [ - "Concepts" - ], - "keywords": [ - "MapReduce" - ] - }, - { - "title": "Resolving SSL Certificate Verify Error in ClickHouse", - "description": "Learn how to resolve the SSL Exception `CERTIFICATE_VERIFY_FAILED` error.", - "date": "2023-05-02", - "tags": [ - "Security and Authentication", - "Errors and Exceptions" - ], - "keywords": [ - "Error", - "SSL Certificate" - ] - }, - { - "title": "Are Materialized Views inserted synchronously?", - "description": "This KB article explores whether Materialized Views are inserted synchronously", - "date": "2023-03-01", - "tags": [ - "Data Modelling" - ], - "keywords": [ - "Materialized View" - ] - }, - { - "title": "How to ingest Parquet files from an S3 bucket", - "description": "Learn the basics of using the S3 table engine in ClickHouse to ingest and query Parquet files from an S3 bucket, including setup, access permissions, and data import examples.", - "date": "2023-03-22", - "tags": [ - "Data Ingestion" - ], - "keywords": [ - "Parquet", - "S3 Bucket" - ] - }, - { - "title": "How to confirm if a Projection is used by the query?", - "date": "2022-07-10", - "description": "Learn how to check if a projection is used in ClickHouse queries by testing with sample data and using EXPLAIN to verify projection usage.", - "tags": [ - "Data Modelling" - ], - "keywords": [ - "Projection" - ] - }, - { - "title": "How to Export Data from ClickHouse to a File", - "description": "Learn various methods to export data from ClickHouse, including `INTO OUTFILE`, the File table engine, and command-line redirection.", - "date": "2023-03-22", - "tags": [ - "Data Export" - ], - "keywords": [ - "Exporting Data", - "INTO OUTFILE", - "File Table Engine" - ] - }, - { - "date": "2025-01-16", - "title": "How do I remove the default user?", - "description": "Learn how to remove the default user when running ClickHouse Server.", - "tags": [ - "Server Admin" - ], - "words": [ - "Remove Default User", - "ClickHouse Server" - ] - }, - { - "title": "Improving Map Lookup Performance in ClickHouse", - "description": "Learn how to optimize Map column lookups in ClickHouse for better query performance by materializing specific keys as standalone columns.", - "date": "2022-10-30", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Map Performance" - ] - }, - { - "title": "How to Verify Query Cache Usage in ClickHouse", - "description": "Learn how to check if query cache is being utilized in ClickHouse using `clickhouse-client` trace logs or SQL commands.", - "date": "2023-06-07", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Query Cache" - ] - }, - { - "title": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", - "description": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", - "date": "2024-05-29", - "tags": [ - "Native Clients and Interfaces" - ], - "keywords": [ - "Docker", - "ODBC", - "Microsoft SQL Server", - "MSSQL" - ] - }, - { - "title": "Importing and Querying JSON Array Objects in ClickHouse", - "description": "Learn how to import JSON array objects into ClickHouse and perform advanced queries using JSON functions and array operations.", - "date": "2023-03-24", - "tags": [ - "Data Formats" - ], - "keywords": [ - "JSON Array Objects" - ] - }, - { - "date": "2024-02-14", - "title": "How to achieve data read consistency in ClickHouse?", - "description": "Learn how to ensure data consistency when reading from ClickHouse, whether you're connected to the same node or a random node.", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Read Consistency" - ] - }, - { - "title": "Importing GeoJSON with a deeply nested object array", - "description": "\u201cImporting GeoJSON with a deeply nested object array\u201c", - "date": "2024-12-18", - "tags": [ - "Data Formats" - ], - "keywords": [ - "GeoJSON" - ] - }, - { - "title": "Simple example flow for extracting JSON data using a landing table with a Materialized View", - "description": "Simple example flow for extracting JSON data using a landing table with a Materialized View", - "date": "2024-05-20", - "tags": [ - "Data Formats" - ], - "keywords": [ - "JSON", - "Landing Table", - "Materialized View" - ] - }, - { - "title": "How to Identify Queries Using Materialized Views in ClickHouse", - "description": "Learn how to query ClickHouse logs to identify all queries involving Materialized Views within a specified time range.", - "date": "2023-03-24", - "tags": [ - "System Tables" - ], - "keywords": [ - "Materialized Views", - "create_table_query" - ] - }, - { - "date": "2023-01-14", - "title": "Comparing metrics between queries in decibels", - "description": "A query to compare metrics between two queries in ClickHouse.", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "compare queries", - "compare metrics", - "query performance" - ] - }, - { - "date": "2023-06-07", - "title": "Automatic schema migration tools for ClickHouse", - "description": "Learn about automatic schema migration tools for ClickHouse and how to manage changing database schemas over time.", - "tags": [ - "Tools and Utilities" - ], - "keywords": [ - "Automatic Schema Migration" - ] - }, - { - "title": "How to Validate if Two Queries Return the Same Result-sets", - "description": "Learn how to validate that two ClickHouse queries produce identical result-sets using hash functions and comparison techniques.", - "date": "2023-05-04", - "tags": [ - "Functions" - ], - "keywords": [ - "Validate", - "Resultsets", - "Hash Functions" - ] - }, - { - "title": "Python quick example using HTTP requests module", - "description": "An example using Python and requests module to write and read to ClickHouse", - "date": "2022-07-10", - "tags": [ - "Native Clients and Interfaces" - ], - "keywords": [ - "Python" - ] - }, - { - "title": "Backing up a specific partition", - "description": "How can I backup a specific partition in ClickHouse?", - "date": "2024-02-14", - "tags": [ - "Managing Data" - ], - "keywords": [ - "Backup", - "Partition" - ] - }, - { - "title": "Is it possible to delete old records from a ClickHouse table?", - "description": "The short answer is \"yes\". ClickHouse has multiple mechanisms that allow freeing up disk space by removing old data. Each mechanism is aimed for different scenarios.", - "date": "2022-10-19", - "tags": [ - "Deleting Data" - ], - "keywords": [ - "Delete Old Records" - ] - }, - { - "title": "How to Create a ClickHouse Dictionary with String Keys and Values", - "description": "Learn how to create a ClickHouse dictionary using string keys and values from a MergeTree table as the source, with examples of setup and usage.", - "date": "2023-07-10", - "tags": [ - "Data Modelling" - ], - "keywords": [ - "Dictionary", - "String Keys", - "String Values" - ] - }, - { - "date": "2023-08-13", - "title": "Does ClickHouse support row-level and column-level security?", - "description": "Learn about row-level and column-level access restrictions in ClickHouse and ClickHouse Cloud, and how to implement role-based access control (RBAC) with policies.", - "tags": [ - "Security and Authentication" - ], - "keywords": [ - "Row-Level", - "Column-Level", - "Security" - ] - }, - { - "title": "Can you PIVOT in ClickHouse?", - "description": "ClickHouse doesn't have a PIVOT clause, but we can get close to this functionality using aggregate function combinators. Let's see how to do this using the UK housing prices dataset.", - "date": "2024-12-11", - "tags": [ - "Data Modelling", - "Core Data Concepts" - ], - "keywords": [ - "PIVOT", - "Aggregate Function Combinators" - ] - }, - { - "title": "Resolving \"Cannot Append Data in Parquet Format\" Error in ClickHouse", - "description": "Are you getting the error \"Cannot append data in format Parquet to file\" error in ClickHouse? Let's take a look at how to resolve it.", - "date": "2023-03-25", - "tags": [ - "Errors and Exceptions", - "Data Formats" - ], - "keywords": [ - "Parquet", - "Cannot Append Data" - ] - }, - { - "title": "Adding a column to a table", - "description": "In this guide, we'll learn how to add a column to an existing table.", - "date": "2024-12-18", - "tags": [ - "Data Modelling" - ], - "keywords": [ - "Add Column" - ] - }, - { - "title": "Resolving \"Too Many Parts\" Error in ClickHouse", - "description": "Learn how to address the \"Too many parts\" error in ClickHouse by optimizing insert rates, configuring MergeTree settings, and managing partitions effectively.", - "date": "2023-03-20", - "tags": [ - "Errors and Exceptions" - ], - "keywords": [ - "Too many parts" - ] - }, - { - "title": "How to Check Your ClickHouse Cloud Service State", - "description": "Learn how to use the ClickHouse Cloud API to check if your service is stopped, idle, or running without waking it up.", - "date": "2023-11-16", - "tags": [ - "Managing Cloud" - ], - "keywords": [ - "Cloud Service State" - ] - }, - { - "title": "How to connect to ClickHouse using SSH Keys", - "description": "How to connect to ClickHouse and ClickHouse Cloud using SSH Keys", - "date": "2024-07-25", - "tags": [ - "Managing Cloud", - "Security and Authentication" - ], - "keywords": [ - "Cloud", - "SSH" - ] - }, - { - "title": "How do I resolve Ingest Failures After ClickHouse 23.9 Release?", - "description": "Learn how to resolve ingest failures caused by stricter grant checking introduced in ClickHouse 23.9 for tables using `async_inserts`. Update grants to fix errors.", - "date": "2022-11-17", - "tags": [ - "Errors and Exceptions" - ], - "keywords": [ - "GRANT", - "Permission Errors" - ] - }, - { - "title": "How to Identify the Most Expensive Queries in ClickHouse", - "description": "Learn how to use the `query_log` table in ClickHouse to identify the most memory and CPU-intensive queries across distributed nodes.", - "date": "2023-03-26", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Expensive Queries" - ] - }, - { - "date": "2023-03-17", - "title": "Useful queries for troubleshooting", - "description": "A collection of handy queries for troubleshooting ClickHouse, including monitoring table sizes, long-running queries, and errors.", - "tags": [ - "Settings" - ], - "keywords": [ - "Useful Queries" - ] - }, - { - "title": "How can I use the new JSON Data Type with Kafka?", - "description": "Learn how to load JSON messages from Apache Kafka directly into a single JSON column in ClickHouse using the Kafka table engine and JSON data type.", - "date": "2024-11-06", - "tags": [ - "Data Formats", - "Data Ingestion" - ] - }, - { - "title": "How to create a table that can query multiple remote clusters", - "description": "How to create a table that can query multiple remote clusters", - "date": "2024-07-03", - "tags": [ - "Deployments and Scaling" - ], - "keywords": [ - "Query", - "Remote Cluster" - ] - }, - { - "title": "Fix the Developer Verification Error in MacOS", - "description": "Learn how to resolve the MacOS developer verification error when running ClickHouse commands, using either System Settings or the terminal.", - "date": "2024-01-09", - "tags": [ - "Errors and Exceptions" - ], - "keywords": [ - "Developer Verification", - "MacOS" - ] - }, - { - "title": "Terraform example on how to use Cloud API", - "description": "This covers an example of how you can use terraform to create/delete clusters using the API", - "Date": "2023-09-02", - "tags": [ - "Native Clients and Interfaces" - ], - "keywords": [ - "Terraform" - ] - }, - { - "title": "How to Enable SSL with Let's Encrypt on a Single ClickHouse Server", - "description": "Learn how to set up SSL for a single ClickHouse server using Let's Encrypt, including certificate issuance, configuration, and validation.", - "date": "2024-12-11", - "tags": [ - "Security and Authentication" - ], - "keywords": [ - "SSL", - "Let/`s Encrypt" - ] - }, - { - "title": "How to Ignore Incorrect Settings in ClickHouse", - "description": "Learn how to use the `skip_check_for_incorrect_settings` option to allow ClickHouse to start even when user-level settings are specified incorrectly.", - "date": "2023-03-01", - "tags": [ - "Settings" - ], - "keywords": [ - "Ignore Incorrect Settings" - ] - }, - { - "title": "ODBC authentication failed error when using the Power BI ClickHouse connector", - "description": "ODBC authentication failed error when using the Power BI ClickHouse connector", - "date": "2024-07-10", - "tags": [ - "Native Clients and Interfaces", - "Errors and Exceptions" - ], - "keywords": [ - "ODBC", - "Power BI Connector", - "Authentication Failed" - ] - }, - { - "date": "2025-01-10", - "title": "Why is ClickHouse logging so verbose by default?", - "description": "Learn why the ClickHouse developers chose to set a verbose logging level by default.", - "tags": [ - "Settings" - ], - "keywords": [ - "Default Logging" - ] - }, - { - "date": "2023-06-07", - "title": "How do I view the number of active or queued mutations?", - "description": "Monitor the number of active or queued mutations in ClickHouse, especially when performing `ALTER` or `UPDATE` operations. Use the `system.mutations` table for tracking mutations.", - "tags": [ - "System Tables" - ], - "keywords": [ - "Active Mutations", - "Queued Mutations" - ] - }, - { - "title": "Alter User Settings Exception", - "description": "Handing the an exception thrown when altering user settings", - "date": "2023-08-26", - "tags": [ - "Settings", - "Errors and Exceptions" - ], - "keywords": [ - "Exception", - "User Settings" - ] - }, - { - "title": "Configuring CAP_IPC_LOCK and CAP_SYS_NICE Capabilities in Docker", - "description": "Learn how to resolve Docker capability warnings for `CAP_IPC_LOCK` and `CAP_SYS_NICE` when running ClickHouse in a container.", - "date": "2023-06-07", - "tags": [ - "Errors and Exceptions" - ], - "keywords": [ - "Docker", - "CAP_IPC_LOCK", - "CAP_SYS_NICE" - ] - }, - { - "title": "How to calculate the ratio of empty/zero values in every column in a table", - "description": "Learn how to calculate the ratio of empty or zero values in every column of a ClickHouse table to optimize sparse column serialization.", - "date": "2023-05-18", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Empty/Zero Ratio", - "Calculate" - ] - }, - { - "title": "Managing ClickHouse Cloud Service with API and cURL", - "description": "Learn how to start, stop, and resume a ClickHouse Cloud service using API endpoints and cURL commands.", - "date": "2023-06-07", - "tags": [ - "Managing Cloud", - "Tools and Utilities" - ], - "keywords": [ - "cURL", - "Manage Cloud", - "ClickHouse API" - ] - }, - { - "date": "2023-09-08", - "description": "Let's learn how to change your billing address in ClickHouse Cloud.", - "title": "How do I change my Billing Contact in ClickHouse Cloud?", - "tags": [ - "Managing Cloud" - ], - "keywords": [ - "Change Billing Contact", - "ClickHouse Cloud" - ] - }, - { - "title": "Mapping Windows Active Directory security groups to ClickHouse roles", - "description": "Example of mapping Windows Active Directory security groups to ClickHouse roles", - "date": "2024-05-20", - "tags": [ - "Tools and Utilities" - ], - "keywords": [ - "Windows" - ] - }, - { - "title": "How to output send logs level traces to file using the clickhouse-client", - "description": "How to output send logs level traces to file using the clickhouse-client", - "date": "2024-11-21", - "tags": [ - "Data Export" - ], - "keywords": [ - "logs level traces", - "clickhouse-client" - ] - }, - { - "title": "What is a columnar database?", - "description": "A columnar database stores the data of each column independently. This allows reading data from disk only for those columns that are used in any given query.", - "date": "2021-09-01", - "tags": [ - "Core Data Concepts" - ], - "keywords": [ - "Columnar Database" - ] - }, - { - "title": "Differences Between Official and 3rd-Party ClickHouse Builds", - "description": "Understand the key differences between official ClickHouse builds and 3rd-party builds, including updates, compatibility, and security considerations.", - "date": "2023-06-26", - "tags": [ - "Concepts" - ], - "keywords": [ - "official builds", - "third-party builds" - ] - }, - { - "date": "2023-03-01", - "title": "Capturing server logs of queries at the client", - "description": "Learn how to capture server logs at the client level, even with different log settings, using the `send_logs_level` client setting.", - "tags": [ - "Server Admin" - ], - "keywords": [ - "Server Logs" - ] - }, - { - "date": "2023-03-24", - "title": "How to quickly recreate a small table across different terminals", - "description": "Learn how to quickly recreate a small table and its data across different terminals using copy/paste for development environments.", - "tags": [ - "Tools and Utilities" - ], - "keywords": [ - "Recreate Table", - "Terminals" - ] - }, - { - "title": "How do I convert Files from Parquet to CSV or JSON?", - "description": "Learn how to use ClickHouse's `clickhouse-local` tool to easily convert Parquet files to CSV or JSON formats.", - "date": "2023-03-22", - "tags": [ - "Data Sources", - "Data Formats" - ], - "keywords": [ - "Converting", - "Parquet", - "CSV", - "JSON" - ] - }, - { - "title": "How do I export MySQL Data to Parquet, CSV, or JSON Using ClickHouse", - "description": "Learn how to use the `clickhouse-local` tool to export MySQL data into formats like Parquet, CSV, or JSON quickly and efficiently.", - "date": "2023-03-21", - "tags": [ - "Data Formats", - "Data Export" - ], - "keywords": [ - "MySQL", - "Parquet", - "CSV", - "JSON" - ] - }, - { - "date": "2023-05-08", - "title": "A Python client working example for connecting to ClickHouse Cloud Service", - "description": "Learn how to connect to ClickHouse Cloud Service using Python with a step-by-step example using the clickhouse-connect driver.", - "tags": [ - "Language Clients" - ], - "keywords": [ - "Python", - "ClickHouse Cloud" - ] - }, - { - "title": "Using ClickHouse for Log Analytics", - "description": "ClickHouse is popular for logs and metrics analysis because of the real-time analytics capabilities provided. Ready to find out more?", - "date": "2023-05-10", - "tags": [ - "Use Cases" - ], - "keywords": [ - "Log Analytics" - ] - }, - { - "title": "What does \u201cClickHouse\u201d mean?", - "description": "Curious what ClickHouse means? Take a look inside this knowledge base article to find out!", - "date": "2021-09-01", - "tags": [ - "Concepts" - ], - "keywords": [ - "ClickHouse Meaning" - ] - }, - { - "title": "How do I Install ClickHouse on Windows 10?", - "description": "Learn how to install and test ClickHouse on Windows 10 using WSL 2. Includes setup, troubleshooting, and running a test environment.", - "date": "2023-04-24", - "tags": [ - "Tools and Utilities" - ], - "keywords": [ - "Windows 10" - ] - }, - { - "title": "How to Increase the Number of Threads in ClickHouse", - "description": "Learn how to configure the Global Thread pool in ClickHouse by adjusting settings like `max_thread_pool_size`, `thread_pool_queue_size`, and `max_thread_pool_free_size`.", - "date": "2023-03-01", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Available Threads" - ] - }, - { - "title": "What is OLAP?", - "description": "OLAP stands for Online Analytical Processing. It is a broad term that can be looked at from two perspectives: technical and business.", - "date": "2021-09-01", - "tags": [ - "Concepts" - ], - "keywords": [ - "OLAP" - ] - }, - { - "title": "Change the prompt in clickhouse-client", - "description": "This article explains how to change the prompt in your Clickhouse client and clickhouse-local terminal window from :) to a prefix followed by :)", - "date": "2023-11-16", - "tags": [ - "Settings", - "Native Clients and Interfaces" - ], - "keywords": [ - "ClickHouse Client", - "Change Prompt" - ] - }, - { - "title": "How to filter a ClickHouse table by an array-column?", - "description": "Knowledgebase article on how to filter a ClickHouse table by an array-column.", - "date": "2024-12-17", - "tags": [ - "Data Modelling", - "Functions" - ], - "keywords": [ - "Filter", - "Array-Column" - ] - }, - { - "title": "How to use array join to extract and query varying attributes using map keys and values", - "description": "Simple example to illustrate how to use array join to extract and query varying attributes using map keys and values", - "date": "2024-06-21", - "tags": [ - "Functions" - ], - "keywords": [ - "arrayJoin" - ] - }, - { - "date": "2023-03-24", - "title": "How can I do partitioned writes by year and month on S3?", - "description": "Learn how to write partitioned data by year and month to an S3 bucket in ClickHouse, using a custom path structure for organizing the data.", - "tags": [ - "Data Export", - "Native Clients and Interfaces" - ], - "keywords": [ - "S3", - "Partitioned Writes" - ] - }, - { - "title": "Why is my primary key not used? How can I check?", - "description": "Covers a common reason why a primary key is not used in ordering and how we can confirm", - "date": "2024-12-12", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Primary Key" - ] - }, - { - "title": "Tips and tricks on optimizing basic data types in ClickHouse", - "description": "Tips and tricks on optimizing basic data types in ClickHouse", - "date": "2024-07-02", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Optimizing Basic Data Types" - ] - }, - { - "title": "How to import JSON into ClickHouse?", - "description": "There are multiple JSON variations among them, but the most commonly used for data ingestion is JSONEachRow. It expects one JSON object per row, each object separated by a newline.", - "date": "2023-03-20", - "tags": [ - "Data Ingestion" - ], - "keywords": [ - "Import JSON" - ] - }, - { - "title": "Resolving Timeout Errors with `remote` and `remoteSecure` Table Functions", - "description": "Learn how to fix timeout errors when using `remote` or `remoteSecure` table functions in ClickHouse by adjusting the connection timeout settings.", - "date": "2023-03-20", - "tags": [ - "Errors and Exceptions" - ], - "keywords": [ - "Connection tries failed" - ] - }, - { - "title": "Common RBAC queries", - "description": "Queries to help grant specific permissions to users.", - "date": "2023-09-28", - "tags": [ - "Security and Authentication", - "Managing Cloud" - ], - "keywords": [ - "RBAC", - "Queries" - ] - }, - { - "title": "How to Measure Query Processing Time Without Returning Rows", - "description": "Learn how to use the `FORMAT Null` option in ClickHouse to measure query processing time without returning any rows to the client.", - "date": "2023-06-07", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Query Processing Time" - ] - }, - { - "title": "Marketplace", - "description": "Learn how to use CSP marketplaces to subscribe to ClickHouse Cloud.", - "date": "2022-12-06", - "tags": [ - "Managing Cloud" - ], - "keywords": [ - "CSP Marketplaces" - ] - }, - { - "title": "How do I use NodeJS with @clickhouse/client", - "description": "Learn how to use @clickhouse/client in a Node.js application to interact with ClickHouse and perform queries.", - "date": "2023-11-22", - "tags": [ - "Language Clients" - ], - "keywords": [ - "NodeJS" - ] - }, - { - "title": "How to Ingest Data from Kafka into ClickHouse", - "description": "Learn how to ingest data from a Kafka topic into ClickHouse using the Kafka table engine, materialized views, and MergeTree tables.", - "date": "2024-04-27", - "tags": [ - "Data Ingestion" - ], - "keywords": [ - "Kafka" - ] - }, - { - "title": "Execute SYSTEM Statements on All Nodes in ClickHouse Cloud", - "description": "Learn how to use `ON CLUSTER` and `clusterAllReplicas` to execute SYSTEM statements and queries across all nodes in a ClickHouse Cloud service.", - "date": "2023-03-01", - "tags": [ - "Deployments and Scaling" - ], - "keywords": [ - "clusterAllReplicas" - ] - }, - { - "title": "Identifying Expensive Queries by Memory Usage in ClickHouse", - "description": "Learn how to use the `system.query_log` table to find the most memory-intensive queries in ClickHouse, with examples for clustered and standalone setups.", - "date": "2023-06-07", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Expensive Queries", - "Memory Usage" - ] - }, - { - "title": "Who is using ClickHouse?", - "description": "Being an open-source product makes this question not so straightforward to answer. You do not have to tell anyone if you want to start using ClickHouse, you just go grab source code or pre-compiled packages.", - "date": "2021-09-01", - "tags": [ - "Use Cases" - ] - }, - { - "title": "How do I solve TOO MANY PARTS error during an INSERT...SELECT?", - "description": "Resolve the TOO_MANY_PARTS error in ClickHouse during an `INSERT...SELECT` by tuning expert-level settings for larger blocks and increasing partition thresholds.", - "date": "2023-07-21", - "tags": [ - "Settings", - "Errors and Exceptions" - ] - }, - { - "title": "Which ClickHouse version to use in production?", - "description": "First of all, let\u2019s discuss why people ask this question in the first place. There are two key reasons...", - "date": "2021-09-01", - "tags": [ - "Concepts", - "Performance and Optimizations" - ], - "keywords": [ - "Production Version" - ] - }, - { - "title": "Recommended Maximum Databases, Tables, Partitions, and Parts in ClickHouse", - "description": "Learn the recommended maximum limits for databases, tables, partitions, and parts in a ClickHouse cluster to ensure optimal performance.", - "date": "2021-09-01", - "tags": [ - "Performance and Optimizations", - "Deployments and Scaling" - ], - "keywords": [ - "limits" - ] - }, - { - "title": "AWS PrivateLink setup to expose private RDS for ClickPipes", - "description": "Setup steps to expose a private RDS via AWS PrivateLink to ClickPipes.", - "date": "2024-11-27", - "tags": [ - "Security and Authentication", - "Managing Cloud" - ], - "keywords": [ - "AWS PrivateLink", - "Private RDS", - "ClickPipes" - ] - }, - { - "title": "How to use the exchange command to switch tables", - "description": "How to use the exchange command to switch tables", - "date": "2024-11-21", - "tags": [ - "Managing Data" - ], - "keywords": [ - "EXCHANGE" - ] - }, - { - "title": "DB::Exception: Part XXXXX intersects previous part YYYYY. It is a bug or a result of manual intervention in the ZooKeeper data.", - "date": "2023-05-02", - "description": "This article explains how to resolve the DB::Exception error related to intersecting parts in ClickHouse, often caused by a race condition or manual intervention in the ZooKeeper data.", - "tags": [ - "Errors and Exceptions", - "System Tables" - ], - "keywords": [ - "Part Intersects", - "system.replicas" - ] - }, - { - "title": "Setting a limit on query execution time", - "description": "How to enforce limit on max query execution time", - "date": "2022-07-10", - "tags": [ - "Managing Cloud", - "Settings" - ] - }, - { - "date": "2023-03-24", - "title": "How to check what code is currently running on a server?", - "description": "ClickHouse provides introspection tools like `system.stack_trace` for inspecting what code is currently running on each server thread, helping with debugging and performance monitoring.", - "tags": [ - "Server Admin" - ] - }, - { - "title": "JSON Extract example", - "description": "A short example on how to extract base types from JSON", - "date": "2021-09-01", - "tags": [ - "Data Formats" - ], - "keywords": [ - "JSON", - "extract base types" - ] - }, - { - "title": "Can I use ClickHouse as a key-value storage?", - "description": "The short answer is **\"no\"**. The key-value workload is among top positions in the list of cases when **NOT** to use ClickHouse.", - "date": "2021-09-01", - "tags": [ - "Concepts", - "Use Cases" - ], - "keywords": [ - "Key-Value Storage" - ] - }, - { - "date": "2024-04-22", - "title": "How to build LLVM and clang on Linux", - "description": "Commands to build LLVM and clang on Linux.", - "tags": [ - "Community", - "Tools and Utilities" - ], - "keywords": [ - "contributing", - "llvm", - "clang" - ] - }, - { - "title": "How do I export PostgreSQL data to Parquet, CSV or JSON?", - "date": "2023-03-22", - "description": "Learn how to export PostgreSQL data to Parquet, CSV, or JSON formats using `clickhouse-local` with various examples.", - "tags": [ - "Data Export", - "Data Formats" - ], - "keywords": [ - "PostgreSQL", - "Parquet", - "CSV", - "JSON" - ] - }, - { - "title": "Can I use ClickHouse as a time-series database?", - "description": "ClickHouse is a generic data storage solution for OLAP workloads, while there are many specialized time-series database management systems.", - "date": "2021-09-01", - "tags": [ - "Concepts" - ], - "keywords": [ - "Time-Series Database" - ] - }, - { - "title": "Using Filtered Aggregates in ClickHouse", - "description": "Learn how to use filtered aggregates in ClickHouse with `-If` and `-Distinct` aggregate combinators to simplify query syntax and enhance analytics.", - "date": "2023-03-01", - "tags": [ - "Functions" - ], - "keywords": [ - "Filtered Aggregates" - ] - }, - { - "title": "Mapping of metrics used in system.dashboards to Prometheus metrics in `system.custom_metrics`", - "description": "Mapping of metrics used in system.dashboards to Prometheus metrics in system.custom_metrics", - "date": "2024-07-23", - "tags": [ - "System Tables" - ], - "keywords": [ - "Metrics", - "system.dashboards", - "system.custom_metrics" - ] - } + { + "title": "Profiling ClickHouse with LLVM's XRay", + "date": "2024-11-13", + "description": "Learn how to profile ClickHouse using LLVM's XRay instrumentation profiler, visualize traces, and analyze performance.", + "tags": ["Performance and Optimizations", "Tools and Utilities"] + }, + { + "date": "2023-06-07", + "title": "Why is ClickHouse Keeper recommended over ZooKeeper?", + "description": "ClickHouse Keeper improves upon ZooKeeper with features like reduced disk space usage, faster recovery, and less memory consumption, offering better performance for ClickHouse clusters.", + "tags": ["Core Data Concepts"], + "keywords": ["ClickHouse Keeper", "ZooKeeper"] + }, + { + "title": "Let's calculate pi using SQL", + "description": "It's Pi Day! Let's calculate pi using ClickHouse SQL", + "date": "2023-03-14", + "tags": ["Use Cases"], + "keywords": ["Calculate Pi", "SQL"] + }, + { + "title": "How do I contribute code to ClickHouse?", + "description": "ClickHouse is an open-source project developed on GitHub. As customary, contribution instructions are published in CONTRIBUTING file in the root of the source code repository.", + "date": "2021-09-01", + "tags": ["Community"], + "keywords": ["Contributing", "Opensource"] + }, + { + "date": "2023-05-02", + "title": "When are TTL rules applied, and do we have control over it?", + "description": "TTL rules in ClickHouse are eventually applied, and you can control when they are executed using the `merge_with_ttl_timeout` setting. Learn how to force TTL application and manage background threads for TTL execution.", + "tags": ["Core Data Concepts"], + "keywords": ["TTL"] + }, + { + "title": "How to Configure Settings for a User in ClickHouse", + "description": "Learn how to define settings in ClickHouse for individual queries, client sessions, or specific users using `SET` and `ALTER USER` commands.", + "date": "2023-03-01", + "tags": ["Settings"], + "keywords": ["SET", "ALTER", "User", "Query", "Session"] + }, + { + "date": "2024-04-17", + "description": "Learn how to search across nodes for tables with a wildcard.", + "title": "Searching across nodes for tables with a wildcard", + "tags": ["Deployments and Scaling"], + "keywords": ["search nodes", "query_log", "wildcard", "table prefix"] + }, + { + "title": "How to Check Users Assigned to Roles and Vice Versa", + "description": "Learn how to query ClickHouse's `system.role_grants` to find users assigned to roles and roles assigned to specific users.", + "date": "2023-09-07", + "tags": ["Server Admin", "System Tables", "Managing Cloud"], + "keywords": ["User Roles"] + }, + { + "title": "What if I have a problem with encodings when using Oracle via ODBC?", + "description": "If you use Oracle as a source of ClickHouse external dictionaries via Oracle ODBC driver, you need to set the correct value for the `NLS_LANG` environment variable in `/etc/default/clickhouse`.", + "date": "2022-04-22", + "tags": ["Native Clients and Interfaces"], + "keywords": ["Oracle", "ODBC"] + }, + { + "title": "How to Use Parameterized Views in ClickHouse", + "description": "Learn how to create and query parameterized views in ClickHouse for dynamic data slicing based on query-time parameters.", + "date": "2023-08-01", + "tags": ["Use Cases"], + "keywords": ["Parameterized Views"] + }, + { + "title": "Why can't I see my data in a dictionary in ClickHouse Cloud?", + "description": "There is an issue where data in dictionaries may not be visible immediately after creation.", + "date": "2024-04-12", + "tags": ["Managing Cloud", "Data Modelling"], + "keywords": ["Dictionaries"] + }, + { + "date": "2023-10-26", + "title": "Can you use ClickHouse for vector search?", + "description": "Learn how to use ClickHouse for vector search, including storing embeddings and searching with distance functions like cosine similarity.", + "tags": ["Use Cases", "Concepts"], + "keywords": ["Vector Search"] + }, + { + "title": "How to insert all rows from one table to another?", + "description": "Knowledgebase article on how to insert all rows from one table to another.", + "date": "2024-12-17", + "tags": ["Data Ingestion"], + "keywords": ["Insert from a table"] + }, + { + "date": "2023-10-25", + "title": "About Quotas and Query complexity", + "tags": ["Managing Cloud"], + "keywords": ["Quotas", "Query Complexity"], + "description": "Quotas and Query Complexity are powerful ways to limit and restrict what users can do in ClickHouse. This KB article shows examples on how to apply these two different approaches." + }, + { + "title": "Does ClickHouse support multi-region replication?", + "description": "The short answer is yes. However, we recommend keeping latency between all regions/datacenters in two-digit range, otherwise write performance will suffer as it goes through distributed consensus protocol.", + "date": "2022-04-22", + "tags": ["Deployments and Scaling", "Managing Cloud"] + }, + { + "title": "Synchronous data reading", + "description": "The new setting `allow_asynchronous_read_from_io_pool_for_merge_tree` allows the number of reading threads (streams) to be higher than the number of threads in the rest of the query execution pipeline.", + "date": "2023-03-01", + "tags": ["Settings", "Performance and Optimizations"], + "keywords": ["Synchronous", "Asynchronous", "Data Reading"] + }, + { + "title": "Why not use something like MapReduce?", + "description": "We can refer to systems like MapReduce as distributed computing systems in which the reduce operation is based on distributed sorting. The most common open-source solution in this class is Apache Hadoop.", + "date": "2021-09-01", + "tags": ["Concepts"], + "keywords": ["MapReduce"] + }, + { + "title": "Resolving SSL Certificate Verify Error in ClickHouse", + "description": "Learn how to resolve the SSL Exception `CERTIFICATE_VERIFY_FAILED` error.", + "date": "2023-05-02", + "tags": ["Security and Authentication", "Errors and Exceptions"], + "keywords": ["Error", "SSL Certificate"] + }, + { + "title": "Are Materialized Views inserted synchronously?", + "description": "This KB article explores whether Materialized Views are inserted synchronously", + "date": "2023-03-01", + "tags": ["Data Modelling"], + "keywords": ["Materialized View"] + }, + { + "title": "How to ingest Parquet files from an S3 bucket", + "description": "Learn the basics of using the S3 table engine in ClickHouse to ingest and query Parquet files from an S3 bucket, including setup, access permissions, and data import examples.", + "date": "2023-03-22", + "tags": ["Data Ingestion"], + "keywords": ["Parquet", "S3 Bucket"] + }, + { + "title": "How to confirm if a Projection is used by the query?", + "date": "2022-07-10", + "description": "Learn how to check if a projection is used in ClickHouse queries by testing with sample data and using EXPLAIN to verify projection usage.", + "tags": ["Data Modelling"], + "keywords": ["Projection"] + }, + { + "title": "How to Export Data from ClickHouse to a File", + "description": "Learn various methods to export data from ClickHouse, including `INTO OUTFILE`, the File table engine, and command-line redirection.", + "date": "2023-03-22", + "tags": ["Data Export"], + "keywords": ["Exporting Data", "INTO OUTFILE", "File Table Engine"] + }, + { + "date": "2025-01-16", + "title": "How do I remove the default user?", + "description": "Learn how to remove the default user when running ClickHouse Server.", + "tags": ["Server Admin"], + "words": ["Remove Default User", "ClickHouse Server"] + }, + { + "title": "Improving Map Lookup Performance in ClickHouse", + "description": "Learn how to optimize Map column lookups in ClickHouse for better query performance by materializing specific keys as standalone columns.", + "date": "2022-10-30", + "tags": ["Performance and Optimizations"], + "keywords": ["Map Performance"] + }, + { + "title": "How to Verify Query Cache Usage in ClickHouse", + "description": "Learn how to check if query cache is being utilized in ClickHouse using `clickhouse-client` trace logs or SQL commands.", + "date": "2023-06-07", + "tags": ["Performance and Optimizations"], + "keywords": ["Query Cache"] + }, + { + "title": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", + "description": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", + "date": "2024-05-29", + "tags": ["Native Clients and Interfaces"], + "keywords": ["Docker", "ODBC", "Microsoft SQL Server", "MSSQL"] + }, + { + "title": "Importing and Querying JSON Array Objects in ClickHouse", + "description": "Learn how to import JSON array objects into ClickHouse and perform advanced queries using JSON functions and array operations.", + "date": "2023-03-24", + "tags": ["Data Formats"], + "keywords": ["JSON Array Objects"] + }, + { + "date": "2024-02-14", + "title": "How to achieve data read consistency in ClickHouse?", + "description": "Learn how to ensure data consistency when reading from ClickHouse, whether you're connected to the same node or a random node.", + "tags": ["Performance and Optimizations"], + "keywords": ["Read Consistency"] + }, + { + "title": "Importing GeoJSON with a deeply nested object array", + "description": "\u201cImporting GeoJSON with a deeply nested object array\u201c", + "date": "2024-12-18", + "tags": ["Data Formats"], + "keywords": ["GeoJSON"] + }, + { + "title": "Simple example flow for extracting JSON data using a landing table with a Materialized View", + "description": "Simple example flow for extracting JSON data using a landing table with a Materialized View", + "date": "2024-05-20", + "tags": ["Data Formats"], + "keywords": ["JSON", "Landing Table", "Materialized View"] + }, + { + "title": "How to Identify Queries Using Materialized Views in ClickHouse", + "description": "Learn how to query ClickHouse logs to identify all queries involving Materialized Views within a specified time range.", + "date": "2023-03-24", + "tags": ["System Tables"], + "keywords": ["Materialized Views", "create_table_query"] + }, + { + "date": "2023-01-14", + "title": "Comparing metrics between queries in decibels", + "description": "A query to compare metrics between two queries in ClickHouse.", + "tags": ["Performance and Optimizations"], + "keywords": ["compare queries", "compare metrics", "query performance"] + }, + { + "date": "2023-06-07", + "title": "Automatic schema migration tools for ClickHouse", + "description": "Learn about automatic schema migration tools for ClickHouse and how to manage changing database schemas over time.", + "tags": ["Tools and Utilities"], + "keywords": ["Automatic Schema Migration"] + }, + { + "title": "How to Validate if Two Queries Return the Same Result-sets", + "description": "Learn how to validate that two ClickHouse queries produce identical result-sets using hash functions and comparison techniques.", + "date": "2023-05-04", + "tags": ["Functions"], + "keywords": ["Validate", "Resultsets", "Hash Functions"] + }, + { + "title": "Python quick example using HTTP requests module", + "description": "An example using Python and requests module to write and read to ClickHouse", + "date": "2022-07-10", + "tags": ["Native Clients and Interfaces"], + "keywords": ["Python"] + }, + { + "title": "Backing up a specific partition", + "description": "How can I backup a specific partition in ClickHouse?", + "date": "2024-02-14", + "tags": ["Managing Data"], + "keywords": ["Backup", "Partition"] + }, + { + "title": "Is it possible to delete old records from a ClickHouse table?", + "description": "The short answer is \"yes\". ClickHouse has multiple mechanisms that allow freeing up disk space by removing old data. Each mechanism is aimed for different scenarios.", + "date": "2022-10-19", + "tags": ["Deleting Data"], + "keywords": ["Delete Old Records"] + }, + { + "title": "How to Create a ClickHouse Dictionary with String Keys and Values", + "description": "Learn how to create a ClickHouse dictionary using string keys and values from a MergeTree table as the source, with examples of setup and usage.", + "date": "2023-07-10", + "tags": ["Data Modelling"], + "keywords": ["Dictionary", "String Keys", "String Values"] + }, + { + "date": "2023-08-13", + "title": "Does ClickHouse support row-level and column-level security?", + "description": "Learn about row-level and column-level access restrictions in ClickHouse and ClickHouse Cloud, and how to implement role-based access control (RBAC) with policies.", + "tags": ["Security and Authentication"], + "keywords": ["Row-Level", "Column-Level", "Security"] + }, + { + "title": "Can you PIVOT in ClickHouse?", + "description": "ClickHouse doesn't have a PIVOT clause, but we can get close to this functionality using aggregate function combinators. Let's see how to do this using the UK housing prices dataset.", + "date": "2024-12-11", + "tags": ["Data Modelling", "Core Data Concepts"], + "keywords": ["PIVOT", "Aggregate Function Combinators"] + }, + { + "title": "Resolving \"Cannot Append Data in Parquet Format\" Error in ClickHouse", + "description": "Are you getting the error \"Cannot append data in format Parquet to file\" error in ClickHouse? Let's take a look at how to resolve it.", + "date": "2023-03-25", + "tags": ["Errors and Exceptions", "Data Formats"], + "keywords": ["Parquet", "Cannot Append Data"] + }, + { + "title": "Adding a column to a table", + "description": "In this guide, we'll learn how to add a column to an existing table.", + "date": "2024-12-18", + "tags": ["Data Modelling"], + "keywords": ["Add Column"] + }, + { + "title": "Resolving \"Too Many Parts\" Error in ClickHouse", + "description": "Learn how to address the \"Too many parts\" error in ClickHouse by optimizing insert rates, configuring MergeTree settings, and managing partitions effectively.", + "date": "2023-03-20", + "tags": ["Errors and Exceptions"], + "keywords": ["Too many parts"] + }, + { + "title": "How to Check Your ClickHouse Cloud Service State", + "description": "Learn how to use the ClickHouse Cloud API to check if your service is stopped, idle, or running without waking it up.", + "date": "2023-11-16", + "tags": ["Managing Cloud"], + "keywords": ["Cloud Service State"] + }, + { + "title": "How to connect to ClickHouse using SSH Keys", + "description": "How to connect to ClickHouse and ClickHouse Cloud using SSH Keys", + "date": "2024-07-25", + "tags": ["Managing Cloud", "Security and Authentication"], + "keywords": ["Cloud", "SSH"] + }, + { + "title": "How do I resolve Ingest Failures After ClickHouse 23.9 Release?", + "description": "Learn how to resolve ingest failures caused by stricter grant checking introduced in ClickHouse 23.9 for tables using `async_inserts`. Update grants to fix errors.", + "date": "2022-11-17", + "tags": ["Errors and Exceptions"], + "keywords": ["GRANT", "Permission Errors"] + }, + { + "title": "How to Identify the Most Expensive Queries in ClickHouse", + "description": "Learn how to use the `query_log` table in ClickHouse to identify the most memory and CPU-intensive queries across distributed nodes.", + "date": "2023-03-26", + "tags": ["Performance and Optimizations"], + "keywords": ["Expensive Queries"] + }, + { + "date": "2023-03-17", + "title": "Useful queries for troubleshooting", + "description": "A collection of handy queries for troubleshooting ClickHouse, including monitoring table sizes, long-running queries, and errors.", + "tags": ["Settings"], + "keywords": ["Useful Queries"] + }, + { + "title": "How can I use the new JSON Data Type with Kafka?", + "description": "Learn how to load JSON messages from Apache Kafka directly into a single JSON column in ClickHouse using the Kafka table engine and JSON data type.", + "date": "2024-11-06", + "tags": ["Data Formats", "Data Ingestion"] + }, + { + "title": "How to create a table that can query multiple remote clusters", + "description": "How to create a table that can query multiple remote clusters", + "date": "2024-07-03", + "tags": ["Deployments and Scaling"], + "keywords": ["Query", "Remote Cluster"] + }, + { + "title": "Fix the Developer Verification Error in MacOS", + "description": "Learn how to resolve the MacOS developer verification error when running ClickHouse commands, using either System Settings or the terminal.", + "date": "2024-01-09", + "tags": ["Errors and Exceptions"], + "keywords": ["Developer Verification", "MacOS"] + }, + { + "title": "Terraform example on how to use Cloud API", + "description": "This covers an example of how you can use terraform to create/delete clusters using the API", + "Date": "2023-09-02", + "tags": ["Native Clients and Interfaces"], + "keywords": ["Terraform"] + }, + { + "title": "How to Enable SSL with Let's Encrypt on a Single ClickHouse Server", + "description": "Learn how to set up SSL for a single ClickHouse server using Let's Encrypt, including certificate issuance, configuration, and validation.", + "date": "2024-12-11", + "tags": ["Security and Authentication"], + "keywords": ["SSL", "Let/`s Encrypt"] + }, + { + "title": "How to Ignore Incorrect Settings in ClickHouse", + "description": "Learn how to use the `skip_check_for_incorrect_settings` option to allow ClickHouse to start even when user-level settings are specified incorrectly.", + "date": "2023-03-01", + "tags": ["Settings"], + "keywords": ["Ignore Incorrect Settings"] + }, + { + "title": "ODBC authentication failed error when using the Power BI ClickHouse connector", + "description": "ODBC authentication failed error when using the Power BI ClickHouse connector", + "date": "2024-07-10", + "tags": ["Native Clients and Interfaces", "Errors and Exceptions"], + "keywords": ["ODBC", "Power BI Connector", "Authentication Failed"] + }, + { + "date": "2025-01-10", + "title": "Why is ClickHouse logging so verbose by default?", + "description": "Learn why the ClickHouse developers chose to set a verbose logging level by default.", + "tags": ["Settings"], + "keywords": ["Default Logging"] + }, + { + "date": "2023-06-07", + "title": "How do I view the number of active or queued mutations?", + "description": "Monitor the number of active or queued mutations in ClickHouse, especially when performing `ALTER` or `UPDATE` operations. Use the `system.mutations` table for tracking mutations.", + "tags": ["System Tables"], + "keywords": ["Active Mutations", "Queued Mutations"] + }, + { + "title": "Alter User Settings Exception", + "description": "Handing the an exception thrown when altering user settings", + "date": "2023-08-26", + "tags": ["Settings", "Errors and Exceptions"], + "keywords": ["Exception", "User Settings"] + }, + { + "title": "Configuring CAP_IPC_LOCK and CAP_SYS_NICE Capabilities in Docker", + "description": "Learn how to resolve Docker capability warnings for `CAP_IPC_LOCK` and `CAP_SYS_NICE` when running ClickHouse in a container.", + "date": "2023-06-07", + "tags": ["Errors and Exceptions"], + "keywords": ["Docker", "CAP_IPC_LOCK", "CAP_SYS_NICE"] + }, + { + "title": "How to calculate the ratio of empty/zero values in every column in a table", + "description": "Learn how to calculate the ratio of empty or zero values in every column of a ClickHouse table to optimize sparse column serialization.", + "date": "2023-05-18", + "tags": ["Performance and Optimizations"], + "keywords": ["Empty/Zero Ratio", "Calculate"] + }, + { + "title": "Managing ClickHouse Cloud Service with API and cURL", + "description": "Learn how to start, stop, and resume a ClickHouse Cloud service using API endpoints and cURL commands.", + "date": "2023-06-07", + "tags": ["Managing Cloud", "Tools and Utilities"], + "keywords": ["cURL", "Manage Cloud", "ClickHouse API"] + }, + { + "date": "2023-09-08", + "description": "Let's learn how to change your billing address in ClickHouse Cloud.", + "title": "How do I change my Billing Contact in ClickHouse Cloud?", + "tags": ["Managing Cloud"], + "keywords": ["Change Billing Contact", "ClickHouse Cloud"] + }, + { + "title": "Mapping Windows Active Directory security groups to ClickHouse roles", + "description": "Example of mapping Windows Active Directory security groups to ClickHouse roles", + "date": "2024-05-20", + "tags": ["Tools and Utilities"], + "keywords": ["Windows"] + }, + { + "title": "How to output send logs level traces to file using the clickhouse-client", + "description": "How to output send logs level traces to file using the clickhouse-client", + "date": "2024-11-21", + "tags": ["Data Export"], + "keywords": ["logs level traces", "clickhouse-client"] + }, + { + "title": "What is a columnar database?", + "description": "A columnar database stores the data of each column independently. This allows reading data from disk only for those columns that are used in any given query.", + "date": "2021-09-01", + "tags": ["Core Data Concepts"], + "keywords": ["Columnar Database"] + }, + { + "title": "Differences Between Official and 3rd-Party ClickHouse Builds", + "description": "Understand the key differences between official ClickHouse builds and 3rd-party builds, including updates, compatibility, and security considerations.", + "date": "2023-06-26", + "tags": ["Concepts"], + "keywords": ["official builds", "third-party builds"] + }, + { + "date": "2023-03-01", + "title": "Capturing server logs of queries at the client", + "description": "Learn how to capture server logs at the client level, even with different log settings, using the `send_logs_level` client setting.", + "tags": ["Server Admin"], + "keywords": ["Server Logs"] + }, + { + "date": "2023-03-24", + "title": "How to quickly recreate a small table across different terminals", + "description": "Learn how to quickly recreate a small table and its data across different terminals using copy/paste for development environments.", + "tags": ["Tools and Utilities"], + "keywords": ["Recreate Table", "Terminals"] + }, + { + "title": "How do I convert Files from Parquet to CSV or JSON?", + "description": "Learn how to use ClickHouse's `clickhouse-local` tool to easily convert Parquet files to CSV or JSON formats.", + "date": "2023-03-22", + "tags": ["Data Sources", "Data Formats"], + "keywords": ["Converting", "Parquet", "CSV", "JSON"] + }, + { + "title": "How do I export MySQL Data to Parquet, CSV, or JSON Using ClickHouse", + "description": "Learn how to use the `clickhouse-local` tool to export MySQL data into formats like Parquet, CSV, or JSON quickly and efficiently.", + "date": "2023-03-21", + "tags": ["Data Formats", "Data Export"], + "keywords": ["MySQL", "Parquet", "CSV", "JSON"] + }, + { + "date": "2023-05-08", + "title": "A Python client working example for connecting to ClickHouse Cloud Service", + "description": "Learn how to connect to ClickHouse Cloud Service using Python with a step-by-step example using the clickhouse-connect driver.", + "tags": ["Language Clients"], + "keywords": ["Python", "ClickHouse Cloud"] + }, + { + "title": "Using ClickHouse for Log Analytics", + "description": "ClickHouse is popular for logs and metrics analysis because of the real-time analytics capabilities provided. Ready to find out more?", + "date": "2023-05-10", + "tags": ["Use Cases"], + "keywords": ["Log Analytics"] + }, + { + "title": "What does \u201cClickHouse\u201d mean?", + "description": "Curious what ClickHouse means? Take a look inside this knowledge base article to find out!", + "date": "2021-09-01", + "tags": ["Concepts"], + "keywords": ["ClickHouse Meaning"] + }, + { + "title": "How do I Install ClickHouse on Windows 10?", + "description": "Learn how to install and test ClickHouse on Windows 10 using WSL 2. Includes setup, troubleshooting, and running a test environment.", + "date": "2023-04-24", + "tags": ["Tools and Utilities"], + "keywords": ["Windows 10"] + }, + { + "title": "How to Increase the Number of Threads in ClickHouse", + "description": "Learn how to configure the Global Thread pool in ClickHouse by adjusting settings like `max_thread_pool_size`, `thread_pool_queue_size`, and `max_thread_pool_free_size`.", + "date": "2023-03-01", + "tags": ["Performance and Optimizations"], + "keywords": ["Available Threads"] + }, + { + "title": "What is OLAP?", + "description": "OLAP stands for Online Analytical Processing. It is a broad term that can be looked at from two perspectives: technical and business.", + "date": "2021-09-01", + "tags": ["Concepts"], + "keywords": ["OLAP"] + }, + { + "title": "Change the prompt in clickhouse-client", + "description": "This article explains how to change the prompt in your Clickhouse client and clickhouse-local terminal window from :) to a prefix followed by :)", + "date": "2023-11-16", + "tags": ["Settings", "Native Clients and Interfaces"], + "keywords": ["ClickHouse Client", "Change Prompt"] + }, + { + "title": "How to filter a ClickHouse table by an array-column?", + "description": "Knowledgebase article on how to filter a ClickHouse table by an array-column.", + "date": "2024-12-17", + "tags": ["Data Modelling", "Functions"], + "keywords": ["Filter", "Array-Column"] + }, + { + "title": "How to use array join to extract and query varying attributes using map keys and values", + "description": "Simple example to illustrate how to use array join to extract and query varying attributes using map keys and values", + "date": "2024-06-21", + "tags": ["Functions"], + "keywords": ["arrayJoin"] + }, + { + "date": "2023-03-24", + "title": "How can I do partitioned writes by year and month on S3?", + "description": "Learn how to write partitioned data by year and month to an S3 bucket in ClickHouse, using a custom path structure for organizing the data.", + "tags": ["Data Export", "Native Clients and Interfaces"], + "keywords": ["S3", "Partitioned Writes"] + }, + { + "title": "Why is my primary key not used? How can I check?", + "description": "Covers a common reason why a primary key is not used in ordering and how we can confirm", + "date": "2024-12-12", + "tags": ["Performance and Optimizations"], + "keywords": ["Primary Key"] + }, + { + "title": "Tips and tricks on optimizing basic data types in ClickHouse", + "description": "Tips and tricks on optimizing basic data types in ClickHouse", + "date": "2024-07-02", + "tags": ["Performance and Optimizations"], + "keywords": ["Optimizing Basic Data Types"] + }, + { + "title": "How to import JSON into ClickHouse?", + "description": "There are multiple JSON variations among them, but the most commonly used for data ingestion is JSONEachRow. It expects one JSON object per row, each object separated by a newline.", + "date": "2023-03-20", + "tags": ["Data Ingestion"], + "keywords": ["Import JSON"] + }, + { + "title": "Resolving Timeout Errors with `remote` and `remoteSecure` Table Functions", + "description": "Learn how to fix timeout errors when using `remote` or `remoteSecure` table functions in ClickHouse by adjusting the connection timeout settings.", + "date": "2023-03-20", + "tags": ["Errors and Exceptions"], + "keywords": ["Connection tries failed"] + }, + { + "title": "Common RBAC queries", + "description": "Queries to help grant specific permissions to users.", + "date": "2023-09-28", + "tags": ["Security and Authentication", "Managing Cloud"], + "keywords": ["RBAC", "Queries"] + }, + { + "title": "How to Measure Query Processing Time Without Returning Rows", + "description": "Learn how to use the `FORMAT Null` option in ClickHouse to measure query processing time without returning any rows to the client.", + "date": "2023-06-07", + "tags": ["Performance and Optimizations"], + "keywords": ["Query Processing Time"] + }, + { + "title": "Marketplace", + "description": "Learn how to use CSP marketplaces to subscribe to ClickHouse Cloud.", + "date": "2022-12-06", + "tags": ["Managing Cloud"], + "keywords": ["CSP Marketplaces"] + }, + { + "title": "How do I use NodeJS with @clickhouse/client", + "description": "Learn how to use @clickhouse/client in a Node.js application to interact with ClickHouse and perform queries.", + "date": "2023-11-22", + "tags": ["Language Clients"], + "keywords": ["NodeJS"] + }, + { + "title": "How to Ingest Data from Kafka into ClickHouse", + "description": "Learn how to ingest data from a Kafka topic into ClickHouse using the Kafka table engine, materialized views, and MergeTree tables.", + "date": "2024-04-27", + "tags": ["Data Ingestion"], + "keywords": ["Kafka"] + }, + { + "title": "Execute SYSTEM Statements on All Nodes in ClickHouse Cloud", + "description": "Learn how to use `ON CLUSTER` and `clusterAllReplicas` to execute SYSTEM statements and queries across all nodes in a ClickHouse Cloud service.", + "date": "2023-03-01", + "tags": ["Deployments and Scaling"], + "keywords": ["clusterAllReplicas"] + }, + { + "title": "Identifying Expensive Queries by Memory Usage in ClickHouse", + "description": "Learn how to use the `system.query_log` table to find the most memory-intensive queries in ClickHouse, with examples for clustered and standalone setups.", + "date": "2023-06-07", + "tags": ["Performance and Optimizations"], + "keywords": ["Expensive Queries", "Memory Usage"] + }, + { + "title": "Who is using ClickHouse?", + "description": "Being an open-source product makes this question not so straightforward to answer. You do not have to tell anyone if you want to start using ClickHouse, you just go grab source code or pre-compiled packages.", + "date": "2021-09-01", + "tags": ["Use Cases"] + }, + { + "title": "How do I solve TOO MANY PARTS error during an INSERT...SELECT?", + "description": "Resolve the TOO_MANY_PARTS error in ClickHouse during an `INSERT...SELECT` by tuning expert-level settings for larger blocks and increasing partition thresholds.", + "date": "2023-07-21", + "tags": ["Settings", "Errors and Exceptions"] + }, + { + "title": "Which ClickHouse version to use in production?", + "description": "First of all, let\u2019s discuss why people ask this question in the first place. There are two key reasons...", + "date": "2021-09-01", + "tags": ["Concepts", "Performance and Optimizations"], + "keywords": ["Production Version"] + }, + { + "title": "Recommended Maximum Databases, Tables, Partitions, and Parts in ClickHouse", + "description": "Learn the recommended maximum limits for databases, tables, partitions, and parts in a ClickHouse cluster to ensure optimal performance.", + "date": "2021-09-01", + "tags": ["Performance and Optimizations", "Deployments and Scaling"], + "keywords": ["limits"] + }, + { + "title": "AWS PrivateLink setup to expose private RDS for ClickPipes", + "description": "Setup steps to expose a private RDS via AWS PrivateLink to ClickPipes.", + "date": "2024-11-27", + "tags": ["Security and Authentication", "Managing Cloud"], + "keywords": ["AWS PrivateLink", "Private RDS", "ClickPipes"] + }, + { + "title": "AWS PrivateLink setup to expose MSK for ClickPipes", + "description": "Setup steps to expose a private MSK via MSK multi-VPC connectivity to ClickPipes.", + "date": "2024-11-27", + "tags": ["Security and Authentication", "Managing Cloud"], + "keywords": ["AWS PrivateLink", "MSK", "MSK multi-VPC", "ClickPipes"] + }, + { + "title": "How to use the exchange command to switch tables", + "description": "How to use the exchange command to switch tables", + "date": "2024-11-21", + "tags": ["Managing Data"], + "keywords": ["EXCHANGE"] + }, + { + "title": "DB::Exception: Part XXXXX intersects previous part YYYYY. It is a bug or a result of manual intervention in the ZooKeeper data.", + "date": "2023-05-02", + "description": "This article explains how to resolve the DB::Exception error related to intersecting parts in ClickHouse, often caused by a race condition or manual intervention in the ZooKeeper data.", + "tags": ["Errors and Exceptions", "System Tables"], + "keywords": ["Part Intersects", "system.replicas"] + }, + { + "title": "Setting a limit on query execution time", + "description": "How to enforce limit on max query execution time", + "date": "2022-07-10", + "tags": ["Managing Cloud", "Settings"] + }, + { + "date": "2023-03-24", + "title": "How to check what code is currently running on a server?", + "description": "ClickHouse provides introspection tools like `system.stack_trace` for inspecting what code is currently running on each server thread, helping with debugging and performance monitoring.", + "tags": ["Server Admin"] + }, + { + "title": "JSON Extract example", + "description": "A short example on how to extract base types from JSON", + "date": "2021-09-01", + "tags": ["Data Formats"], + "keywords": ["JSON", "extract base types"] + }, + { + "title": "Can I use ClickHouse as a key-value storage?", + "description": "The short answer is **\"no\"**. The key-value workload is among top positions in the list of cases when **NOT** to use ClickHouse.", + "date": "2021-09-01", + "tags": ["Concepts", "Use Cases"], + "keywords": ["Key-Value Storage"] + }, + { + "date": "2024-04-22", + "title": "How to build LLVM and clang on Linux", + "description": "Commands to build LLVM and clang on Linux.", + "tags": ["Community", "Tools and Utilities"], + "keywords": ["contributing", "llvm", "clang"] + }, + { + "title": "How do I export PostgreSQL data to Parquet, CSV or JSON?", + "date": "2023-03-22", + "description": "Learn how to export PostgreSQL data to Parquet, CSV, or JSON formats using `clickhouse-local` with various examples.", + "tags": ["Data Export", "Data Formats"], + "keywords": ["PostgreSQL", "Parquet", "CSV", "JSON"] + }, + { + "title": "Can I use ClickHouse as a time-series database?", + "description": "ClickHouse is a generic data storage solution for OLAP workloads, while there are many specialized time-series database management systems.", + "date": "2021-09-01", + "tags": ["Concepts"], + "keywords": ["Time-Series Database"] + }, + { + "title": "Using Filtered Aggregates in ClickHouse", + "description": "Learn how to use filtered aggregates in ClickHouse with `-If` and `-Distinct` aggregate combinators to simplify query syntax and enhance analytics.", + "date": "2023-03-01", + "tags": ["Functions"], + "keywords": ["Filtered Aggregates"] + }, + { + "title": "Mapping of metrics used in system.dashboards to Prometheus metrics in `system.custom_metrics`", + "description": "Mapping of metrics used in system.dashboards to Prometheus metrics in system.custom_metrics", + "date": "2024-07-23", + "tags": ["System Tables"], + "keywords": ["Metrics", "system.dashboards", "system.custom_metrics"] + } ] From 65b7596f0fbf56c1441b6d15f6ff055272f62400 Mon Sep 17 00:00:00 2001 From: Kuba Kaflik Date: Mon, 14 Apr 2025 13:33:21 +0200 Subject: [PATCH 2/5] fix formatter issues --- .../data-ingestion/clickpipes/aws-privatelink.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md b/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md index d918a94787a..5afeb4ce0ca 100644 --- a/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md +++ b/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md @@ -1,8 +1,8 @@ --- -sidebar_label: "AWS PrivateLink for ClickPipes" -description: "Establish a secure connection between ClickPipes and a data source using AWS PrivateLink." +sidebar_label: 'AWS PrivateLink for ClickPipes' +description: 'Establish a secure connection between ClickPipes and a data source using AWS PrivateLink.' slug: /integrations/clickpipes/aws-privatelink -title: "AWS PrivateLink for ClickPipes" +title: 'AWS PrivateLink for ClickPipes' --- import cp_service from '@site/static/images/integrations/data-ingestion/clickpipes/cp_service.png'; From 1fb8be41b11fd9a80c15f62de87f7359b17d5db3 Mon Sep 17 00:00:00 2001 From: Kuba Kaflik Date: Tue, 15 Apr 2025 09:05:47 +0200 Subject: [PATCH 3/5] rolback format --- static/knowledgebase_toc.json | 2025 +++++++++++++++++++++------------ 1 file changed, 1277 insertions(+), 748 deletions(-) diff --git a/static/knowledgebase_toc.json b/static/knowledgebase_toc.json index 3f6365f5afc..85622272651 100644 --- a/static/knowledgebase_toc.json +++ b/static/knowledgebase_toc.json @@ -1,751 +1,1280 @@ [ { - "title": "Profiling ClickHouse with LLVM's XRay", - "date": "2024-11-13", - "description": "Learn how to profile ClickHouse using LLVM's XRay instrumentation profiler, visualize traces, and analyze performance.", - "tags": ["Performance and Optimizations", "Tools and Utilities"] - }, - { - "date": "2023-06-07", - "title": "Why is ClickHouse Keeper recommended over ZooKeeper?", - "description": "ClickHouse Keeper improves upon ZooKeeper with features like reduced disk space usage, faster recovery, and less memory consumption, offering better performance for ClickHouse clusters.", - "tags": ["Core Data Concepts"], - "keywords": ["ClickHouse Keeper", "ZooKeeper"] - }, - { - "title": "Let's calculate pi using SQL", - "description": "It's Pi Day! Let's calculate pi using ClickHouse SQL", - "date": "2023-03-14", - "tags": ["Use Cases"], - "keywords": ["Calculate Pi", "SQL"] - }, - { - "title": "How do I contribute code to ClickHouse?", - "description": "ClickHouse is an open-source project developed on GitHub. As customary, contribution instructions are published in CONTRIBUTING file in the root of the source code repository.", - "date": "2021-09-01", - "tags": ["Community"], - "keywords": ["Contributing", "Opensource"] - }, - { - "date": "2023-05-02", - "title": "When are TTL rules applied, and do we have control over it?", - "description": "TTL rules in ClickHouse are eventually applied, and you can control when they are executed using the `merge_with_ttl_timeout` setting. Learn how to force TTL application and manage background threads for TTL execution.", - "tags": ["Core Data Concepts"], - "keywords": ["TTL"] - }, - { - "title": "How to Configure Settings for a User in ClickHouse", - "description": "Learn how to define settings in ClickHouse for individual queries, client sessions, or specific users using `SET` and `ALTER USER` commands.", - "date": "2023-03-01", - "tags": ["Settings"], - "keywords": ["SET", "ALTER", "User", "Query", "Session"] - }, - { - "date": "2024-04-17", - "description": "Learn how to search across nodes for tables with a wildcard.", - "title": "Searching across nodes for tables with a wildcard", - "tags": ["Deployments and Scaling"], - "keywords": ["search nodes", "query_log", "wildcard", "table prefix"] - }, - { - "title": "How to Check Users Assigned to Roles and Vice Versa", - "description": "Learn how to query ClickHouse's `system.role_grants` to find users assigned to roles and roles assigned to specific users.", - "date": "2023-09-07", - "tags": ["Server Admin", "System Tables", "Managing Cloud"], - "keywords": ["User Roles"] - }, - { - "title": "What if I have a problem with encodings when using Oracle via ODBC?", - "description": "If you use Oracle as a source of ClickHouse external dictionaries via Oracle ODBC driver, you need to set the correct value for the `NLS_LANG` environment variable in `/etc/default/clickhouse`.", - "date": "2022-04-22", - "tags": ["Native Clients and Interfaces"], - "keywords": ["Oracle", "ODBC"] - }, - { - "title": "How to Use Parameterized Views in ClickHouse", - "description": "Learn how to create and query parameterized views in ClickHouse for dynamic data slicing based on query-time parameters.", - "date": "2023-08-01", - "tags": ["Use Cases"], - "keywords": ["Parameterized Views"] - }, - { - "title": "Why can't I see my data in a dictionary in ClickHouse Cloud?", - "description": "There is an issue where data in dictionaries may not be visible immediately after creation.", - "date": "2024-04-12", - "tags": ["Managing Cloud", "Data Modelling"], - "keywords": ["Dictionaries"] - }, - { - "date": "2023-10-26", - "title": "Can you use ClickHouse for vector search?", - "description": "Learn how to use ClickHouse for vector search, including storing embeddings and searching with distance functions like cosine similarity.", - "tags": ["Use Cases", "Concepts"], - "keywords": ["Vector Search"] - }, - { - "title": "How to insert all rows from one table to another?", - "description": "Knowledgebase article on how to insert all rows from one table to another.", - "date": "2024-12-17", - "tags": ["Data Ingestion"], - "keywords": ["Insert from a table"] - }, - { - "date": "2023-10-25", - "title": "About Quotas and Query complexity", - "tags": ["Managing Cloud"], - "keywords": ["Quotas", "Query Complexity"], - "description": "Quotas and Query Complexity are powerful ways to limit and restrict what users can do in ClickHouse. This KB article shows examples on how to apply these two different approaches." - }, - { - "title": "Does ClickHouse support multi-region replication?", - "description": "The short answer is yes. However, we recommend keeping latency between all regions/datacenters in two-digit range, otherwise write performance will suffer as it goes through distributed consensus protocol.", - "date": "2022-04-22", - "tags": ["Deployments and Scaling", "Managing Cloud"] - }, - { - "title": "Synchronous data reading", - "description": "The new setting `allow_asynchronous_read_from_io_pool_for_merge_tree` allows the number of reading threads (streams) to be higher than the number of threads in the rest of the query execution pipeline.", - "date": "2023-03-01", - "tags": ["Settings", "Performance and Optimizations"], - "keywords": ["Synchronous", "Asynchronous", "Data Reading"] - }, - { - "title": "Why not use something like MapReduce?", - "description": "We can refer to systems like MapReduce as distributed computing systems in which the reduce operation is based on distributed sorting. The most common open-source solution in this class is Apache Hadoop.", - "date": "2021-09-01", - "tags": ["Concepts"], - "keywords": ["MapReduce"] - }, - { - "title": "Resolving SSL Certificate Verify Error in ClickHouse", - "description": "Learn how to resolve the SSL Exception `CERTIFICATE_VERIFY_FAILED` error.", - "date": "2023-05-02", - "tags": ["Security and Authentication", "Errors and Exceptions"], - "keywords": ["Error", "SSL Certificate"] - }, - { - "title": "Are Materialized Views inserted synchronously?", - "description": "This KB article explores whether Materialized Views are inserted synchronously", - "date": "2023-03-01", - "tags": ["Data Modelling"], - "keywords": ["Materialized View"] - }, - { - "title": "How to ingest Parquet files from an S3 bucket", - "description": "Learn the basics of using the S3 table engine in ClickHouse to ingest and query Parquet files from an S3 bucket, including setup, access permissions, and data import examples.", - "date": "2023-03-22", - "tags": ["Data Ingestion"], - "keywords": ["Parquet", "S3 Bucket"] - }, - { - "title": "How to confirm if a Projection is used by the query?", - "date": "2022-07-10", - "description": "Learn how to check if a projection is used in ClickHouse queries by testing with sample data and using EXPLAIN to verify projection usage.", - "tags": ["Data Modelling"], - "keywords": ["Projection"] - }, - { - "title": "How to Export Data from ClickHouse to a File", - "description": "Learn various methods to export data from ClickHouse, including `INTO OUTFILE`, the File table engine, and command-line redirection.", - "date": "2023-03-22", - "tags": ["Data Export"], - "keywords": ["Exporting Data", "INTO OUTFILE", "File Table Engine"] - }, - { - "date": "2025-01-16", - "title": "How do I remove the default user?", - "description": "Learn how to remove the default user when running ClickHouse Server.", - "tags": ["Server Admin"], - "words": ["Remove Default User", "ClickHouse Server"] - }, - { - "title": "Improving Map Lookup Performance in ClickHouse", - "description": "Learn how to optimize Map column lookups in ClickHouse for better query performance by materializing specific keys as standalone columns.", - "date": "2022-10-30", - "tags": ["Performance and Optimizations"], - "keywords": ["Map Performance"] - }, - { - "title": "How to Verify Query Cache Usage in ClickHouse", - "description": "Learn how to check if query cache is being utilized in ClickHouse using `clickhouse-client` trace logs or SQL commands.", - "date": "2023-06-07", - "tags": ["Performance and Optimizations"], - "keywords": ["Query Cache"] - }, - { - "title": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", - "description": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", - "date": "2024-05-29", - "tags": ["Native Clients and Interfaces"], - "keywords": ["Docker", "ODBC", "Microsoft SQL Server", "MSSQL"] - }, - { - "title": "Importing and Querying JSON Array Objects in ClickHouse", - "description": "Learn how to import JSON array objects into ClickHouse and perform advanced queries using JSON functions and array operations.", - "date": "2023-03-24", - "tags": ["Data Formats"], - "keywords": ["JSON Array Objects"] - }, - { - "date": "2024-02-14", - "title": "How to achieve data read consistency in ClickHouse?", - "description": "Learn how to ensure data consistency when reading from ClickHouse, whether you're connected to the same node or a random node.", - "tags": ["Performance and Optimizations"], - "keywords": ["Read Consistency"] - }, - { - "title": "Importing GeoJSON with a deeply nested object array", - "description": "\u201cImporting GeoJSON with a deeply nested object array\u201c", - "date": "2024-12-18", - "tags": ["Data Formats"], - "keywords": ["GeoJSON"] - }, - { - "title": "Simple example flow for extracting JSON data using a landing table with a Materialized View", - "description": "Simple example flow for extracting JSON data using a landing table with a Materialized View", - "date": "2024-05-20", - "tags": ["Data Formats"], - "keywords": ["JSON", "Landing Table", "Materialized View"] - }, - { - "title": "How to Identify Queries Using Materialized Views in ClickHouse", - "description": "Learn how to query ClickHouse logs to identify all queries involving Materialized Views within a specified time range.", - "date": "2023-03-24", - "tags": ["System Tables"], - "keywords": ["Materialized Views", "create_table_query"] - }, - { - "date": "2023-01-14", - "title": "Comparing metrics between queries in decibels", - "description": "A query to compare metrics between two queries in ClickHouse.", - "tags": ["Performance and Optimizations"], - "keywords": ["compare queries", "compare metrics", "query performance"] - }, - { - "date": "2023-06-07", - "title": "Automatic schema migration tools for ClickHouse", - "description": "Learn about automatic schema migration tools for ClickHouse and how to manage changing database schemas over time.", - "tags": ["Tools and Utilities"], - "keywords": ["Automatic Schema Migration"] - }, - { - "title": "How to Validate if Two Queries Return the Same Result-sets", - "description": "Learn how to validate that two ClickHouse queries produce identical result-sets using hash functions and comparison techniques.", - "date": "2023-05-04", - "tags": ["Functions"], - "keywords": ["Validate", "Resultsets", "Hash Functions"] - }, - { - "title": "Python quick example using HTTP requests module", - "description": "An example using Python and requests module to write and read to ClickHouse", - "date": "2022-07-10", - "tags": ["Native Clients and Interfaces"], - "keywords": ["Python"] - }, - { - "title": "Backing up a specific partition", - "description": "How can I backup a specific partition in ClickHouse?", - "date": "2024-02-14", - "tags": ["Managing Data"], - "keywords": ["Backup", "Partition"] - }, - { - "title": "Is it possible to delete old records from a ClickHouse table?", - "description": "The short answer is \"yes\". ClickHouse has multiple mechanisms that allow freeing up disk space by removing old data. Each mechanism is aimed for different scenarios.", - "date": "2022-10-19", - "tags": ["Deleting Data"], - "keywords": ["Delete Old Records"] - }, - { - "title": "How to Create a ClickHouse Dictionary with String Keys and Values", - "description": "Learn how to create a ClickHouse dictionary using string keys and values from a MergeTree table as the source, with examples of setup and usage.", - "date": "2023-07-10", - "tags": ["Data Modelling"], - "keywords": ["Dictionary", "String Keys", "String Values"] - }, - { - "date": "2023-08-13", - "title": "Does ClickHouse support row-level and column-level security?", - "description": "Learn about row-level and column-level access restrictions in ClickHouse and ClickHouse Cloud, and how to implement role-based access control (RBAC) with policies.", - "tags": ["Security and Authentication"], - "keywords": ["Row-Level", "Column-Level", "Security"] - }, - { - "title": "Can you PIVOT in ClickHouse?", - "description": "ClickHouse doesn't have a PIVOT clause, but we can get close to this functionality using aggregate function combinators. Let's see how to do this using the UK housing prices dataset.", - "date": "2024-12-11", - "tags": ["Data Modelling", "Core Data Concepts"], - "keywords": ["PIVOT", "Aggregate Function Combinators"] - }, - { - "title": "Resolving \"Cannot Append Data in Parquet Format\" Error in ClickHouse", - "description": "Are you getting the error \"Cannot append data in format Parquet to file\" error in ClickHouse? Let's take a look at how to resolve it.", - "date": "2023-03-25", - "tags": ["Errors and Exceptions", "Data Formats"], - "keywords": ["Parquet", "Cannot Append Data"] - }, - { - "title": "Adding a column to a table", - "description": "In this guide, we'll learn how to add a column to an existing table.", - "date": "2024-12-18", - "tags": ["Data Modelling"], - "keywords": ["Add Column"] - }, - { - "title": "Resolving \"Too Many Parts\" Error in ClickHouse", - "description": "Learn how to address the \"Too many parts\" error in ClickHouse by optimizing insert rates, configuring MergeTree settings, and managing partitions effectively.", - "date": "2023-03-20", - "tags": ["Errors and Exceptions"], - "keywords": ["Too many parts"] - }, - { - "title": "How to Check Your ClickHouse Cloud Service State", - "description": "Learn how to use the ClickHouse Cloud API to check if your service is stopped, idle, or running without waking it up.", - "date": "2023-11-16", - "tags": ["Managing Cloud"], - "keywords": ["Cloud Service State"] - }, - { - "title": "How to connect to ClickHouse using SSH Keys", - "description": "How to connect to ClickHouse and ClickHouse Cloud using SSH Keys", - "date": "2024-07-25", - "tags": ["Managing Cloud", "Security and Authentication"], - "keywords": ["Cloud", "SSH"] - }, - { - "title": "How do I resolve Ingest Failures After ClickHouse 23.9 Release?", - "description": "Learn how to resolve ingest failures caused by stricter grant checking introduced in ClickHouse 23.9 for tables using `async_inserts`. Update grants to fix errors.", - "date": "2022-11-17", - "tags": ["Errors and Exceptions"], - "keywords": ["GRANT", "Permission Errors"] - }, - { - "title": "How to Identify the Most Expensive Queries in ClickHouse", - "description": "Learn how to use the `query_log` table in ClickHouse to identify the most memory and CPU-intensive queries across distributed nodes.", - "date": "2023-03-26", - "tags": ["Performance and Optimizations"], - "keywords": ["Expensive Queries"] - }, - { - "date": "2023-03-17", - "title": "Useful queries for troubleshooting", - "description": "A collection of handy queries for troubleshooting ClickHouse, including monitoring table sizes, long-running queries, and errors.", - "tags": ["Settings"], - "keywords": ["Useful Queries"] - }, - { - "title": "How can I use the new JSON Data Type with Kafka?", - "description": "Learn how to load JSON messages from Apache Kafka directly into a single JSON column in ClickHouse using the Kafka table engine and JSON data type.", - "date": "2024-11-06", - "tags": ["Data Formats", "Data Ingestion"] - }, - { - "title": "How to create a table that can query multiple remote clusters", - "description": "How to create a table that can query multiple remote clusters", - "date": "2024-07-03", - "tags": ["Deployments and Scaling"], - "keywords": ["Query", "Remote Cluster"] - }, - { - "title": "Fix the Developer Verification Error in MacOS", - "description": "Learn how to resolve the MacOS developer verification error when running ClickHouse commands, using either System Settings or the terminal.", - "date": "2024-01-09", - "tags": ["Errors and Exceptions"], - "keywords": ["Developer Verification", "MacOS"] - }, - { - "title": "Terraform example on how to use Cloud API", - "description": "This covers an example of how you can use terraform to create/delete clusters using the API", - "Date": "2023-09-02", - "tags": ["Native Clients and Interfaces"], - "keywords": ["Terraform"] - }, - { - "title": "How to Enable SSL with Let's Encrypt on a Single ClickHouse Server", - "description": "Learn how to set up SSL for a single ClickHouse server using Let's Encrypt, including certificate issuance, configuration, and validation.", - "date": "2024-12-11", - "tags": ["Security and Authentication"], - "keywords": ["SSL", "Let/`s Encrypt"] - }, - { - "title": "How to Ignore Incorrect Settings in ClickHouse", - "description": "Learn how to use the `skip_check_for_incorrect_settings` option to allow ClickHouse to start even when user-level settings are specified incorrectly.", - "date": "2023-03-01", - "tags": ["Settings"], - "keywords": ["Ignore Incorrect Settings"] - }, - { - "title": "ODBC authentication failed error when using the Power BI ClickHouse connector", - "description": "ODBC authentication failed error when using the Power BI ClickHouse connector", - "date": "2024-07-10", - "tags": ["Native Clients and Interfaces", "Errors and Exceptions"], - "keywords": ["ODBC", "Power BI Connector", "Authentication Failed"] - }, - { - "date": "2025-01-10", - "title": "Why is ClickHouse logging so verbose by default?", - "description": "Learn why the ClickHouse developers chose to set a verbose logging level by default.", - "tags": ["Settings"], - "keywords": ["Default Logging"] - }, - { - "date": "2023-06-07", - "title": "How do I view the number of active or queued mutations?", - "description": "Monitor the number of active or queued mutations in ClickHouse, especially when performing `ALTER` or `UPDATE` operations. Use the `system.mutations` table for tracking mutations.", - "tags": ["System Tables"], - "keywords": ["Active Mutations", "Queued Mutations"] - }, - { - "title": "Alter User Settings Exception", - "description": "Handing the an exception thrown when altering user settings", - "date": "2023-08-26", - "tags": ["Settings", "Errors and Exceptions"], - "keywords": ["Exception", "User Settings"] - }, - { - "title": "Configuring CAP_IPC_LOCK and CAP_SYS_NICE Capabilities in Docker", - "description": "Learn how to resolve Docker capability warnings for `CAP_IPC_LOCK` and `CAP_SYS_NICE` when running ClickHouse in a container.", - "date": "2023-06-07", - "tags": ["Errors and Exceptions"], - "keywords": ["Docker", "CAP_IPC_LOCK", "CAP_SYS_NICE"] - }, - { - "title": "How to calculate the ratio of empty/zero values in every column in a table", - "description": "Learn how to calculate the ratio of empty or zero values in every column of a ClickHouse table to optimize sparse column serialization.", - "date": "2023-05-18", - "tags": ["Performance and Optimizations"], - "keywords": ["Empty/Zero Ratio", "Calculate"] - }, - { - "title": "Managing ClickHouse Cloud Service with API and cURL", - "description": "Learn how to start, stop, and resume a ClickHouse Cloud service using API endpoints and cURL commands.", - "date": "2023-06-07", - "tags": ["Managing Cloud", "Tools and Utilities"], - "keywords": ["cURL", "Manage Cloud", "ClickHouse API"] - }, - { - "date": "2023-09-08", - "description": "Let's learn how to change your billing address in ClickHouse Cloud.", - "title": "How do I change my Billing Contact in ClickHouse Cloud?", - "tags": ["Managing Cloud"], - "keywords": ["Change Billing Contact", "ClickHouse Cloud"] - }, - { - "title": "Mapping Windows Active Directory security groups to ClickHouse roles", - "description": "Example of mapping Windows Active Directory security groups to ClickHouse roles", - "date": "2024-05-20", - "tags": ["Tools and Utilities"], - "keywords": ["Windows"] - }, - { - "title": "How to output send logs level traces to file using the clickhouse-client", - "description": "How to output send logs level traces to file using the clickhouse-client", - "date": "2024-11-21", - "tags": ["Data Export"], - "keywords": ["logs level traces", "clickhouse-client"] - }, - { - "title": "What is a columnar database?", - "description": "A columnar database stores the data of each column independently. This allows reading data from disk only for those columns that are used in any given query.", - "date": "2021-09-01", - "tags": ["Core Data Concepts"], - "keywords": ["Columnar Database"] - }, - { - "title": "Differences Between Official and 3rd-Party ClickHouse Builds", - "description": "Understand the key differences between official ClickHouse builds and 3rd-party builds, including updates, compatibility, and security considerations.", - "date": "2023-06-26", - "tags": ["Concepts"], - "keywords": ["official builds", "third-party builds"] - }, - { - "date": "2023-03-01", - "title": "Capturing server logs of queries at the client", - "description": "Learn how to capture server logs at the client level, even with different log settings, using the `send_logs_level` client setting.", - "tags": ["Server Admin"], - "keywords": ["Server Logs"] - }, - { - "date": "2023-03-24", - "title": "How to quickly recreate a small table across different terminals", - "description": "Learn how to quickly recreate a small table and its data across different terminals using copy/paste for development environments.", - "tags": ["Tools and Utilities"], - "keywords": ["Recreate Table", "Terminals"] - }, - { - "title": "How do I convert Files from Parquet to CSV or JSON?", - "description": "Learn how to use ClickHouse's `clickhouse-local` tool to easily convert Parquet files to CSV or JSON formats.", - "date": "2023-03-22", - "tags": ["Data Sources", "Data Formats"], - "keywords": ["Converting", "Parquet", "CSV", "JSON"] - }, - { - "title": "How do I export MySQL Data to Parquet, CSV, or JSON Using ClickHouse", - "description": "Learn how to use the `clickhouse-local` tool to export MySQL data into formats like Parquet, CSV, or JSON quickly and efficiently.", - "date": "2023-03-21", - "tags": ["Data Formats", "Data Export"], - "keywords": ["MySQL", "Parquet", "CSV", "JSON"] - }, - { - "date": "2023-05-08", - "title": "A Python client working example for connecting to ClickHouse Cloud Service", - "description": "Learn how to connect to ClickHouse Cloud Service using Python with a step-by-step example using the clickhouse-connect driver.", - "tags": ["Language Clients"], - "keywords": ["Python", "ClickHouse Cloud"] - }, - { - "title": "Using ClickHouse for Log Analytics", - "description": "ClickHouse is popular for logs and metrics analysis because of the real-time analytics capabilities provided. Ready to find out more?", - "date": "2023-05-10", - "tags": ["Use Cases"], - "keywords": ["Log Analytics"] - }, - { - "title": "What does \u201cClickHouse\u201d mean?", - "description": "Curious what ClickHouse means? Take a look inside this knowledge base article to find out!", - "date": "2021-09-01", - "tags": ["Concepts"], - "keywords": ["ClickHouse Meaning"] - }, - { - "title": "How do I Install ClickHouse on Windows 10?", - "description": "Learn how to install and test ClickHouse on Windows 10 using WSL 2. Includes setup, troubleshooting, and running a test environment.", - "date": "2023-04-24", - "tags": ["Tools and Utilities"], - "keywords": ["Windows 10"] - }, - { - "title": "How to Increase the Number of Threads in ClickHouse", - "description": "Learn how to configure the Global Thread pool in ClickHouse by adjusting settings like `max_thread_pool_size`, `thread_pool_queue_size`, and `max_thread_pool_free_size`.", - "date": "2023-03-01", - "tags": ["Performance and Optimizations"], - "keywords": ["Available Threads"] - }, - { - "title": "What is OLAP?", - "description": "OLAP stands for Online Analytical Processing. It is a broad term that can be looked at from two perspectives: technical and business.", - "date": "2021-09-01", - "tags": ["Concepts"], - "keywords": ["OLAP"] - }, - { - "title": "Change the prompt in clickhouse-client", - "description": "This article explains how to change the prompt in your Clickhouse client and clickhouse-local terminal window from :) to a prefix followed by :)", - "date": "2023-11-16", - "tags": ["Settings", "Native Clients and Interfaces"], - "keywords": ["ClickHouse Client", "Change Prompt"] - }, - { - "title": "How to filter a ClickHouse table by an array-column?", - "description": "Knowledgebase article on how to filter a ClickHouse table by an array-column.", - "date": "2024-12-17", - "tags": ["Data Modelling", "Functions"], - "keywords": ["Filter", "Array-Column"] - }, - { - "title": "How to use array join to extract and query varying attributes using map keys and values", - "description": "Simple example to illustrate how to use array join to extract and query varying attributes using map keys and values", - "date": "2024-06-21", - "tags": ["Functions"], - "keywords": ["arrayJoin"] - }, - { - "date": "2023-03-24", - "title": "How can I do partitioned writes by year and month on S3?", - "description": "Learn how to write partitioned data by year and month to an S3 bucket in ClickHouse, using a custom path structure for organizing the data.", - "tags": ["Data Export", "Native Clients and Interfaces"], - "keywords": ["S3", "Partitioned Writes"] - }, - { - "title": "Why is my primary key not used? How can I check?", - "description": "Covers a common reason why a primary key is not used in ordering and how we can confirm", - "date": "2024-12-12", - "tags": ["Performance and Optimizations"], - "keywords": ["Primary Key"] - }, - { - "title": "Tips and tricks on optimizing basic data types in ClickHouse", - "description": "Tips and tricks on optimizing basic data types in ClickHouse", - "date": "2024-07-02", - "tags": ["Performance and Optimizations"], - "keywords": ["Optimizing Basic Data Types"] - }, - { - "title": "How to import JSON into ClickHouse?", - "description": "There are multiple JSON variations among them, but the most commonly used for data ingestion is JSONEachRow. It expects one JSON object per row, each object separated by a newline.", - "date": "2023-03-20", - "tags": ["Data Ingestion"], - "keywords": ["Import JSON"] - }, - { - "title": "Resolving Timeout Errors with `remote` and `remoteSecure` Table Functions", - "description": "Learn how to fix timeout errors when using `remote` or `remoteSecure` table functions in ClickHouse by adjusting the connection timeout settings.", - "date": "2023-03-20", - "tags": ["Errors and Exceptions"], - "keywords": ["Connection tries failed"] - }, - { - "title": "Common RBAC queries", - "description": "Queries to help grant specific permissions to users.", - "date": "2023-09-28", - "tags": ["Security and Authentication", "Managing Cloud"], - "keywords": ["RBAC", "Queries"] - }, - { - "title": "How to Measure Query Processing Time Without Returning Rows", - "description": "Learn how to use the `FORMAT Null` option in ClickHouse to measure query processing time without returning any rows to the client.", - "date": "2023-06-07", - "tags": ["Performance and Optimizations"], - "keywords": ["Query Processing Time"] - }, - { - "title": "Marketplace", - "description": "Learn how to use CSP marketplaces to subscribe to ClickHouse Cloud.", - "date": "2022-12-06", - "tags": ["Managing Cloud"], - "keywords": ["CSP Marketplaces"] - }, - { - "title": "How do I use NodeJS with @clickhouse/client", - "description": "Learn how to use @clickhouse/client in a Node.js application to interact with ClickHouse and perform queries.", - "date": "2023-11-22", - "tags": ["Language Clients"], - "keywords": ["NodeJS"] - }, - { - "title": "How to Ingest Data from Kafka into ClickHouse", - "description": "Learn how to ingest data from a Kafka topic into ClickHouse using the Kafka table engine, materialized views, and MergeTree tables.", - "date": "2024-04-27", - "tags": ["Data Ingestion"], - "keywords": ["Kafka"] - }, - { - "title": "Execute SYSTEM Statements on All Nodes in ClickHouse Cloud", - "description": "Learn how to use `ON CLUSTER` and `clusterAllReplicas` to execute SYSTEM statements and queries across all nodes in a ClickHouse Cloud service.", - "date": "2023-03-01", - "tags": ["Deployments and Scaling"], - "keywords": ["clusterAllReplicas"] - }, - { - "title": "Identifying Expensive Queries by Memory Usage in ClickHouse", - "description": "Learn how to use the `system.query_log` table to find the most memory-intensive queries in ClickHouse, with examples for clustered and standalone setups.", - "date": "2023-06-07", - "tags": ["Performance and Optimizations"], - "keywords": ["Expensive Queries", "Memory Usage"] - }, - { - "title": "Who is using ClickHouse?", - "description": "Being an open-source product makes this question not so straightforward to answer. You do not have to tell anyone if you want to start using ClickHouse, you just go grab source code or pre-compiled packages.", - "date": "2021-09-01", - "tags": ["Use Cases"] - }, - { - "title": "How do I solve TOO MANY PARTS error during an INSERT...SELECT?", - "description": "Resolve the TOO_MANY_PARTS error in ClickHouse during an `INSERT...SELECT` by tuning expert-level settings for larger blocks and increasing partition thresholds.", - "date": "2023-07-21", - "tags": ["Settings", "Errors and Exceptions"] - }, - { - "title": "Which ClickHouse version to use in production?", - "description": "First of all, let\u2019s discuss why people ask this question in the first place. There are two key reasons...", - "date": "2021-09-01", - "tags": ["Concepts", "Performance and Optimizations"], - "keywords": ["Production Version"] - }, - { - "title": "Recommended Maximum Databases, Tables, Partitions, and Parts in ClickHouse", - "description": "Learn the recommended maximum limits for databases, tables, partitions, and parts in a ClickHouse cluster to ensure optimal performance.", - "date": "2021-09-01", - "tags": ["Performance and Optimizations", "Deployments and Scaling"], - "keywords": ["limits"] - }, - { - "title": "AWS PrivateLink setup to expose private RDS for ClickPipes", - "description": "Setup steps to expose a private RDS via AWS PrivateLink to ClickPipes.", - "date": "2024-11-27", - "tags": ["Security and Authentication", "Managing Cloud"], - "keywords": ["AWS PrivateLink", "Private RDS", "ClickPipes"] - }, - { - "title": "AWS PrivateLink setup to expose MSK for ClickPipes", - "description": "Setup steps to expose a private MSK via MSK multi-VPC connectivity to ClickPipes.", - "date": "2024-11-27", - "tags": ["Security and Authentication", "Managing Cloud"], - "keywords": ["AWS PrivateLink", "MSK", "MSK multi-VPC", "ClickPipes"] - }, - { - "title": "How to use the exchange command to switch tables", - "description": "How to use the exchange command to switch tables", - "date": "2024-11-21", - "tags": ["Managing Data"], - "keywords": ["EXCHANGE"] - }, - { - "title": "DB::Exception: Part XXXXX intersects previous part YYYYY. It is a bug or a result of manual intervention in the ZooKeeper data.", - "date": "2023-05-02", - "description": "This article explains how to resolve the DB::Exception error related to intersecting parts in ClickHouse, often caused by a race condition or manual intervention in the ZooKeeper data.", - "tags": ["Errors and Exceptions", "System Tables"], - "keywords": ["Part Intersects", "system.replicas"] - }, - { - "title": "Setting a limit on query execution time", - "description": "How to enforce limit on max query execution time", - "date": "2022-07-10", - "tags": ["Managing Cloud", "Settings"] - }, - { - "date": "2023-03-24", - "title": "How to check what code is currently running on a server?", - "description": "ClickHouse provides introspection tools like `system.stack_trace` for inspecting what code is currently running on each server thread, helping with debugging and performance monitoring.", - "tags": ["Server Admin"] - }, - { - "title": "JSON Extract example", - "description": "A short example on how to extract base types from JSON", - "date": "2021-09-01", - "tags": ["Data Formats"], - "keywords": ["JSON", "extract base types"] - }, - { - "title": "Can I use ClickHouse as a key-value storage?", - "description": "The short answer is **\"no\"**. The key-value workload is among top positions in the list of cases when **NOT** to use ClickHouse.", - "date": "2021-09-01", - "tags": ["Concepts", "Use Cases"], - "keywords": ["Key-Value Storage"] - }, - { - "date": "2024-04-22", - "title": "How to build LLVM and clang on Linux", - "description": "Commands to build LLVM and clang on Linux.", - "tags": ["Community", "Tools and Utilities"], - "keywords": ["contributing", "llvm", "clang"] - }, - { - "title": "How do I export PostgreSQL data to Parquet, CSV or JSON?", - "date": "2023-03-22", - "description": "Learn how to export PostgreSQL data to Parquet, CSV, or JSON formats using `clickhouse-local` with various examples.", - "tags": ["Data Export", "Data Formats"], - "keywords": ["PostgreSQL", "Parquet", "CSV", "JSON"] - }, - { - "title": "Can I use ClickHouse as a time-series database?", - "description": "ClickHouse is a generic data storage solution for OLAP workloads, while there are many specialized time-series database management systems.", - "date": "2021-09-01", - "tags": ["Concepts"], - "keywords": ["Time-Series Database"] - }, - { - "title": "Using Filtered Aggregates in ClickHouse", - "description": "Learn how to use filtered aggregates in ClickHouse with `-If` and `-Distinct` aggregate combinators to simplify query syntax and enhance analytics.", - "date": "2023-03-01", - "tags": ["Functions"], - "keywords": ["Filtered Aggregates"] - }, - { - "title": "Mapping of metrics used in system.dashboards to Prometheus metrics in `system.custom_metrics`", - "description": "Mapping of metrics used in system.dashboards to Prometheus metrics in system.custom_metrics", - "date": "2024-07-23", - "tags": ["System Tables"], - "keywords": ["Metrics", "system.dashboards", "system.custom_metrics"] + "title": "Profiling ClickHouse with LLVM's XRay", + "date": "2024-11-13", + "description": "Learn how to profile ClickHouse using LLVM's XRay instrumentation profiler, visualize traces, and analyze performance.", + "tags": [ + "Performance and Optimizations", + "Tools and Utilities" + ] + }, + { + "date": "2023-06-07", + "title": "Why is ClickHouse Keeper recommended over ZooKeeper?", + "description": "ClickHouse Keeper improves upon ZooKeeper with features like reduced disk space usage, faster recovery, and less memory consumption, offering better performance for ClickHouse clusters.", + "tags": [ + "Core Data Concepts" + ], + "keywords": [ + "ClickHouse Keeper", + "ZooKeeper" + ] + }, + { + "title": "Let's calculate pi using SQL", + "description": "It's Pi Day! Let's calculate pi using ClickHouse SQL", + "date": "2023-03-14", + "tags": [ + "Use Cases" + ], + "keywords": [ + "Calculate Pi", + "SQL" + ] + }, + { + "title": "How do I contribute code to ClickHouse?", + "description": "ClickHouse is an open-source project developed on GitHub. As customary, contribution instructions are published in CONTRIBUTING file in the root of the source code repository.", + "date": "2021-09-01", + "tags": [ + "Community" + ], + "keywords": [ + "Contributing", + "Opensource" + ] + }, + { + "date": "2023-05-02", + "title": "When are TTL rules applied, and do we have control over it?", + "description": "TTL rules in ClickHouse are eventually applied, and you can control when they are executed using the `merge_with_ttl_timeout` setting. Learn how to force TTL application and manage background threads for TTL execution.", + "tags": [ + "Core Data Concepts" + ], + "keywords": [ + "TTL" + ] + }, + { + "title": "How to Configure Settings for a User in ClickHouse", + "description": "Learn how to define settings in ClickHouse for individual queries, client sessions, or specific users using `SET` and `ALTER USER` commands.", + "date": "2023-03-01", + "tags": [ + "Settings" + ], + "keywords": [ + "SET", + "ALTER", + "User", + "Query", + "Session" + ] + }, + { + "date": "2024-04-17", + "description": "Learn how to search across nodes for tables with a wildcard.", + "title": "Searching across nodes for tables with a wildcard", + "tags": [ + "Deployments and Scaling" + ], + "keywords": [ + "search nodes", + "query_log", + "wildcard", + "table prefix" + ] + }, + { + "title": "How to Check Users Assigned to Roles and Vice Versa", + "description": "Learn how to query ClickHouse's `system.role_grants` to find users assigned to roles and roles assigned to specific users.", + "date": "2023-09-07", + "tags": [ + "Server Admin", + "System Tables", + "Managing Cloud" + ], + "keywords": [ + "User Roles" + ] + }, + { + "title": "What if I have a problem with encodings when using Oracle via ODBC?", + "description": "If you use Oracle as a source of ClickHouse external dictionaries via Oracle ODBC driver, you need to set the correct value for the `NLS_LANG` environment variable in `/etc/default/clickhouse`.", + "date": "2022-04-22", + "tags": [ + "Native Clients and Interfaces" + ], + "keywords": [ + "Oracle", + "ODBC" + ] + }, + { + "title": "How to Use Parameterized Views in ClickHouse", + "description": "Learn how to create and query parameterized views in ClickHouse for dynamic data slicing based on query-time parameters.", + "date": "2023-08-01", + "tags": [ + "Use Cases" + ], + "keywords": [ + "Parameterized Views" + ] + }, + { + "title": "Why can't I see my data in a dictionary in ClickHouse Cloud?", + "description": "There is an issue where data in dictionaries may not be visible immediately after creation.", + "date": "2024-04-12", + "tags": [ + "Managing Cloud", + "Data Modelling" + ], + "keywords": [ + "Dictionaries" + ] + }, + { + "date": "2023-10-26", + "title": "Can you use ClickHouse for vector search?", + "description": "Learn how to use ClickHouse for vector search, including storing embeddings and searching with distance functions like cosine similarity.", + "tags": [ + "Use Cases", + "Concepts" + ], + "keywords": [ + "Vector Search" + ] + }, + { + "title": "How to insert all rows from one table to another?", + "description": "Knowledgebase article on how to insert all rows from one table to another.", + "date": "2024-12-17", + "tags": [ + "Data Ingestion" + ], + "keywords": [ + "Insert from a table" + ] + }, + { + "date": "2023-10-25", + "title": "About Quotas and Query complexity", + "tags": [ + "Managing Cloud" + ], + "keywords": [ + "Quotas", + "Query Complexity" + ], + "description": "Quotas and Query Complexity are powerful ways to limit and restrict what users can do in ClickHouse. This KB article shows examples on how to apply these two different approaches." + }, + { + "title": "Does ClickHouse support multi-region replication?", + "description": "The short answer is yes. However, we recommend keeping latency between all regions/datacenters in two-digit range, otherwise write performance will suffer as it goes through distributed consensus protocol.", + "date": "2022-04-22", + "tags": [ + "Deployments and Scaling", + "Managing Cloud" + ] + }, + { + "title": "Synchronous data reading", + "description": "The new setting `allow_asynchronous_read_from_io_pool_for_merge_tree` allows the number of reading threads (streams) to be higher than the number of threads in the rest of the query execution pipeline.", + "date": "2023-03-01", + "tags": [ + "Settings", + "Performance and Optimizations" + ], + "keywords": [ + "Synchronous", + "Asynchronous", + "Data Reading" + ] + }, + { + "title": "Why not use something like MapReduce?", + "description": "We can refer to systems like MapReduce as distributed computing systems in which the reduce operation is based on distributed sorting. The most common open-source solution in this class is Apache Hadoop.", + "date": "2021-09-01", + "tags": [ + "Concepts" + ], + "keywords": [ + "MapReduce" + ] + }, + { + "title": "Resolving SSL Certificate Verify Error in ClickHouse", + "description": "Learn how to resolve the SSL Exception `CERTIFICATE_VERIFY_FAILED` error.", + "date": "2023-05-02", + "tags": [ + "Security and Authentication", + "Errors and Exceptions" + ], + "keywords": [ + "Error", + "SSL Certificate" + ] + }, + { + "title": "Are Materialized Views inserted synchronously?", + "description": "This KB article explores whether Materialized Views are inserted synchronously", + "date": "2023-03-01", + "tags": [ + "Data Modelling" + ], + "keywords": [ + "Materialized View" + ] + }, + { + "title": "How to ingest Parquet files from an S3 bucket", + "description": "Learn the basics of using the S3 table engine in ClickHouse to ingest and query Parquet files from an S3 bucket, including setup, access permissions, and data import examples.", + "date": "2023-03-22", + "tags": [ + "Data Ingestion" + ], + "keywords": [ + "Parquet", + "S3 Bucket" + ] + }, + { + "title": "How to confirm if a Projection is used by the query?", + "date": "2022-07-10", + "description": "Learn how to check if a projection is used in ClickHouse queries by testing with sample data and using EXPLAIN to verify projection usage.", + "tags": [ + "Data Modelling" + ], + "keywords": [ + "Projection" + ] + }, + { + "title": "How to Export Data from ClickHouse to a File", + "description": "Learn various methods to export data from ClickHouse, including `INTO OUTFILE`, the File table engine, and command-line redirection.", + "date": "2023-03-22", + "tags": [ + "Data Export" + ], + "keywords": [ + "Exporting Data", + "INTO OUTFILE", + "File Table Engine" + ] + }, + { + "date": "2025-01-16", + "title": "How do I remove the default user?", + "description": "Learn how to remove the default user when running ClickHouse Server.", + "tags": [ + "Server Admin" + ], + "words": [ + "Remove Default User", + "ClickHouse Server" + ] + }, + { + "title": "Improving Map Lookup Performance in ClickHouse", + "description": "Learn how to optimize Map column lookups in ClickHouse for better query performance by materializing specific keys as standalone columns.", + "date": "2022-10-30", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Map Performance" + ] + }, + { + "title": "How to Verify Query Cache Usage in ClickHouse", + "description": "Learn how to check if query cache is being utilized in ClickHouse using `clickhouse-client` trace logs or SQL commands.", + "date": "2023-06-07", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Query Cache" + ] + }, + { + "title": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", + "description": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", + "date": "2024-05-29", + "tags": [ + "Native Clients and Interfaces" + ], + "keywords": [ + "Docker", + "ODBC", + "Microsoft SQL Server", + "MSSQL" + ] + }, + { + "title": "Importing and Querying JSON Array Objects in ClickHouse", + "description": "Learn how to import JSON array objects into ClickHouse and perform advanced queries using JSON functions and array operations.", + "date": "2023-03-24", + "tags": [ + "Data Formats" + ], + "keywords": [ + "JSON Array Objects" + ] + }, + { + "date": "2024-02-14", + "title": "How to achieve data read consistency in ClickHouse?", + "description": "Learn how to ensure data consistency when reading from ClickHouse, whether you're connected to the same node or a random node.", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Read Consistency" + ] + }, + { + "title": "Importing GeoJSON with a deeply nested object array", + "description": "\u201cImporting GeoJSON with a deeply nested object array\u201c", + "date": "2024-12-18", + "tags": [ + "Data Formats" + ], + "keywords": [ + "GeoJSON" + ] + }, + { + "title": "Simple example flow for extracting JSON data using a landing table with a Materialized View", + "description": "Simple example flow for extracting JSON data using a landing table with a Materialized View", + "date": "2024-05-20", + "tags": [ + "Data Formats" + ], + "keywords": [ + "JSON", + "Landing Table", + "Materialized View" + ] + }, + { + "title": "How to Identify Queries Using Materialized Views in ClickHouse", + "description": "Learn how to query ClickHouse logs to identify all queries involving Materialized Views within a specified time range.", + "date": "2023-03-24", + "tags": [ + "System Tables" + ], + "keywords": [ + "Materialized Views", + "create_table_query" + ] + }, + { + "date": "2023-01-14", + "title": "Comparing metrics between queries in decibels", + "description": "A query to compare metrics between two queries in ClickHouse.", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "compare queries", + "compare metrics", + "query performance" + ] + }, + { + "date": "2023-06-07", + "title": "Automatic schema migration tools for ClickHouse", + "description": "Learn about automatic schema migration tools for ClickHouse and how to manage changing database schemas over time.", + "tags": [ + "Tools and Utilities" + ], + "keywords": [ + "Automatic Schema Migration" + ] + }, + { + "title": "How to Validate if Two Queries Return the Same Result-sets", + "description": "Learn how to validate that two ClickHouse queries produce identical result-sets using hash functions and comparison techniques.", + "date": "2023-05-04", + "tags": [ + "Functions" + ], + "keywords": [ + "Validate", + "Resultsets", + "Hash Functions" + ] + }, + { + "title": "Python quick example using HTTP requests module", + "description": "An example using Python and requests module to write and read to ClickHouse", + "date": "2022-07-10", + "tags": [ + "Native Clients and Interfaces" + ], + "keywords": [ + "Python" + ] + }, + { + "title": "Backing up a specific partition", + "description": "How can I backup a specific partition in ClickHouse?", + "date": "2024-02-14", + "tags": [ + "Managing Data" + ], + "keywords": [ + "Backup", + "Partition" + ] + }, + { + "title": "Is it possible to delete old records from a ClickHouse table?", + "description": "The short answer is \"yes\". ClickHouse has multiple mechanisms that allow freeing up disk space by removing old data. Each mechanism is aimed for different scenarios.", + "date": "2022-10-19", + "tags": [ + "Deleting Data" + ], + "keywords": [ + "Delete Old Records" + ] + }, + { + "title": "How to Create a ClickHouse Dictionary with String Keys and Values", + "description": "Learn how to create a ClickHouse dictionary using string keys and values from a MergeTree table as the source, with examples of setup and usage.", + "date": "2023-07-10", + "tags": [ + "Data Modelling" + ], + "keywords": [ + "Dictionary", + "String Keys", + "String Values" + ] + }, + { + "date": "2023-08-13", + "title": "Does ClickHouse support row-level and column-level security?", + "description": "Learn about row-level and column-level access restrictions in ClickHouse and ClickHouse Cloud, and how to implement role-based access control (RBAC) with policies.", + "tags": [ + "Security and Authentication" + ], + "keywords": [ + "Row-Level", + "Column-Level", + "Security" + ] + }, + { + "title": "Can you PIVOT in ClickHouse?", + "description": "ClickHouse doesn't have a PIVOT clause, but we can get close to this functionality using aggregate function combinators. Let's see how to do this using the UK housing prices dataset.", + "date": "2024-12-11", + "tags": [ + "Data Modelling", + "Core Data Concepts" + ], + "keywords": [ + "PIVOT", + "Aggregate Function Combinators" + ] + }, + { + "title": "Resolving \"Cannot Append Data in Parquet Format\" Error in ClickHouse", + "description": "Are you getting the error \"Cannot append data in format Parquet to file\" error in ClickHouse? Let's take a look at how to resolve it.", + "date": "2023-03-25", + "tags": [ + "Errors and Exceptions", + "Data Formats" + ], + "keywords": [ + "Parquet", + "Cannot Append Data" + ] + }, + { + "title": "Adding a column to a table", + "description": "In this guide, we'll learn how to add a column to an existing table.", + "date": "2024-12-18", + "tags": [ + "Data Modelling" + ], + "keywords": [ + "Add Column" + ] + }, + { + "title": "Resolving \"Too Many Parts\" Error in ClickHouse", + "description": "Learn how to address the \"Too many parts\" error in ClickHouse by optimizing insert rates, configuring MergeTree settings, and managing partitions effectively.", + "date": "2023-03-20", + "tags": [ + "Errors and Exceptions" + ], + "keywords": [ + "Too many parts" + ] + }, + { + "title": "How to Check Your ClickHouse Cloud Service State", + "description": "Learn how to use the ClickHouse Cloud API to check if your service is stopped, idle, or running without waking it up.", + "date": "2023-11-16", + "tags": [ + "Managing Cloud" + ], + "keywords": [ + "Cloud Service State" + ] + }, + { + "title": "How to connect to ClickHouse using SSH Keys", + "description": "How to connect to ClickHouse and ClickHouse Cloud using SSH Keys", + "date": "2024-07-25", + "tags": [ + "Managing Cloud", + "Security and Authentication" + ], + "keywords": [ + "Cloud", + "SSH" + ] + }, + { + "title": "How do I resolve Ingest Failures After ClickHouse 23.9 Release?", + "description": "Learn how to resolve ingest failures caused by stricter grant checking introduced in ClickHouse 23.9 for tables using `async_inserts`. Update grants to fix errors.", + "date": "2022-11-17", + "tags": [ + "Errors and Exceptions" + ], + "keywords": [ + "GRANT", + "Permission Errors" + ] + }, + { + "title": "How to Identify the Most Expensive Queries in ClickHouse", + "description": "Learn how to use the `query_log` table in ClickHouse to identify the most memory and CPU-intensive queries across distributed nodes.", + "date": "2023-03-26", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Expensive Queries" + ] + }, + { + "date": "2023-03-17", + "title": "Useful queries for troubleshooting", + "description": "A collection of handy queries for troubleshooting ClickHouse, including monitoring table sizes, long-running queries, and errors.", + "tags": [ + "Settings" + ], + "keywords": [ + "Useful Queries" + ] + }, + { + "title": "How can I use the new JSON Data Type with Kafka?", + "description": "Learn how to load JSON messages from Apache Kafka directly into a single JSON column in ClickHouse using the Kafka table engine and JSON data type.", + "date": "2024-11-06", + "tags": [ + "Data Formats", + "Data Ingestion" + ] + }, + { + "title": "How to create a table that can query multiple remote clusters", + "description": "How to create a table that can query multiple remote clusters", + "date": "2024-07-03", + "tags": [ + "Deployments and Scaling" + ], + "keywords": [ + "Query", + "Remote Cluster" + ] + }, + { + "title": "Fix the Developer Verification Error in MacOS", + "description": "Learn how to resolve the MacOS developer verification error when running ClickHouse commands, using either System Settings or the terminal.", + "date": "2024-01-09", + "tags": [ + "Errors and Exceptions" + ], + "keywords": [ + "Developer Verification", + "MacOS" + ] + }, + { + "title": "Terraform example on how to use Cloud API", + "description": "This covers an example of how you can use terraform to create/delete clusters using the API", + "Date": "2023-09-02", + "tags": [ + "Native Clients and Interfaces" + ], + "keywords": [ + "Terraform" + ] + }, + { + "title": "How to Enable SSL with Let's Encrypt on a Single ClickHouse Server", + "description": "Learn how to set up SSL for a single ClickHouse server using Let's Encrypt, including certificate issuance, configuration, and validation.", + "date": "2024-12-11", + "tags": [ + "Security and Authentication" + ], + "keywords": [ + "SSL", + "Let/`s Encrypt" + ] + }, + { + "title": "How to Ignore Incorrect Settings in ClickHouse", + "description": "Learn how to use the `skip_check_for_incorrect_settings` option to allow ClickHouse to start even when user-level settings are specified incorrectly.", + "date": "2023-03-01", + "tags": [ + "Settings" + ], + "keywords": [ + "Ignore Incorrect Settings" + ] + }, + { + "title": "ODBC authentication failed error when using the Power BI ClickHouse connector", + "description": "ODBC authentication failed error when using the Power BI ClickHouse connector", + "date": "2024-07-10", + "tags": [ + "Native Clients and Interfaces", + "Errors and Exceptions" + ], + "keywords": [ + "ODBC", + "Power BI Connector", + "Authentication Failed" + ] + }, + { + "date": "2025-01-10", + "title": "Why is ClickHouse logging so verbose by default?", + "description": "Learn why the ClickHouse developers chose to set a verbose logging level by default.", + "tags": [ + "Settings" + ], + "keywords": [ + "Default Logging" + ] + }, + { + "date": "2023-06-07", + "title": "How do I view the number of active or queued mutations?", + "description": "Monitor the number of active or queued mutations in ClickHouse, especially when performing `ALTER` or `UPDATE` operations. Use the `system.mutations` table for tracking mutations.", + "tags": [ + "System Tables" + ], + "keywords": [ + "Active Mutations", + "Queued Mutations" + ] + }, + { + "title": "Alter User Settings Exception", + "description": "Handing the an exception thrown when altering user settings", + "date": "2023-08-26", + "tags": [ + "Settings", + "Errors and Exceptions" + ], + "keywords": [ + "Exception", + "User Settings" + ] + }, + { + "title": "Configuring CAP_IPC_LOCK and CAP_SYS_NICE Capabilities in Docker", + "description": "Learn how to resolve Docker capability warnings for `CAP_IPC_LOCK` and `CAP_SYS_NICE` when running ClickHouse in a container.", + "date": "2023-06-07", + "tags": [ + "Errors and Exceptions" + ], + "keywords": [ + "Docker", + "CAP_IPC_LOCK", + "CAP_SYS_NICE" + ] + }, + { + "title": "How to calculate the ratio of empty/zero values in every column in a table", + "description": "Learn how to calculate the ratio of empty or zero values in every column of a ClickHouse table to optimize sparse column serialization.", + "date": "2023-05-18", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Empty/Zero Ratio", + "Calculate" + ] + }, + { + "title": "Managing ClickHouse Cloud Service with API and cURL", + "description": "Learn how to start, stop, and resume a ClickHouse Cloud service using API endpoints and cURL commands.", + "date": "2023-06-07", + "tags": [ + "Managing Cloud", + "Tools and Utilities" + ], + "keywords": [ + "cURL", + "Manage Cloud", + "ClickHouse API" + ] + }, + { + "date": "2023-09-08", + "description": "Let's learn how to change your billing address in ClickHouse Cloud.", + "title": "How do I change my Billing Contact in ClickHouse Cloud?", + "tags": [ + "Managing Cloud" + ], + "keywords": [ + "Change Billing Contact", + "ClickHouse Cloud" + ] + }, + { + "title": "Mapping Windows Active Directory security groups to ClickHouse roles", + "description": "Example of mapping Windows Active Directory security groups to ClickHouse roles", + "date": "2024-05-20", + "tags": [ + "Tools and Utilities" + ], + "keywords": [ + "Windows" + ] + }, + { + "title": "How to output send logs level traces to file using the clickhouse-client", + "description": "How to output send logs level traces to file using the clickhouse-client", + "date": "2024-11-21", + "tags": [ + "Data Export" + ], + "keywords": [ + "logs level traces", + "clickhouse-client" + ] + }, + { + "title": "What is a columnar database?", + "description": "A columnar database stores the data of each column independently. This allows reading data from disk only for those columns that are used in any given query.", + "date": "2021-09-01", + "tags": [ + "Core Data Concepts" + ], + "keywords": [ + "Columnar Database" + ] + }, + { + "title": "Differences Between Official and 3rd-Party ClickHouse Builds", + "description": "Understand the key differences between official ClickHouse builds and 3rd-party builds, including updates, compatibility, and security considerations.", + "date": "2023-06-26", + "tags": [ + "Concepts" + ], + "keywords": [ + "official builds", + "third-party builds" + ] + }, + { + "date": "2023-03-01", + "title": "Capturing server logs of queries at the client", + "description": "Learn how to capture server logs at the client level, even with different log settings, using the `send_logs_level` client setting.", + "tags": [ + "Server Admin" + ], + "keywords": [ + "Server Logs" + ] + }, + { + "date": "2023-03-24", + "title": "How to quickly recreate a small table across different terminals", + "description": "Learn how to quickly recreate a small table and its data across different terminals using copy/paste for development environments.", + "tags": [ + "Tools and Utilities" + ], + "keywords": [ + "Recreate Table", + "Terminals" + ] + }, + { + "title": "How do I convert Files from Parquet to CSV or JSON?", + "description": "Learn how to use ClickHouse's `clickhouse-local` tool to easily convert Parquet files to CSV or JSON formats.", + "date": "2023-03-22", + "tags": [ + "Data Sources", + "Data Formats" + ], + "keywords": [ + "Converting", + "Parquet", + "CSV", + "JSON" + ] + }, + { + "title": "How do I export MySQL Data to Parquet, CSV, or JSON Using ClickHouse", + "description": "Learn how to use the `clickhouse-local` tool to export MySQL data into formats like Parquet, CSV, or JSON quickly and efficiently.", + "date": "2023-03-21", + "tags": [ + "Data Formats", + "Data Export" + ], + "keywords": [ + "MySQL", + "Parquet", + "CSV", + "JSON" + ] + }, + { + "date": "2023-05-08", + "title": "A Python client working example for connecting to ClickHouse Cloud Service", + "description": "Learn how to connect to ClickHouse Cloud Service using Python with a step-by-step example using the clickhouse-connect driver.", + "tags": [ + "Language Clients" + ], + "keywords": [ + "Python", + "ClickHouse Cloud" + ] + }, + { + "title": "Using ClickHouse for Log Analytics", + "description": "ClickHouse is popular for logs and metrics analysis because of the real-time analytics capabilities provided. Ready to find out more?", + "date": "2023-05-10", + "tags": [ + "Use Cases" + ], + "keywords": [ + "Log Analytics" + ] + }, + { + "title": "What does \u201cClickHouse\u201d mean?", + "description": "Curious what ClickHouse means? Take a look inside this knowledge base article to find out!", + "date": "2021-09-01", + "tags": [ + "Concepts" + ], + "keywords": [ + "ClickHouse Meaning" + ] + }, + { + "title": "How do I Install ClickHouse on Windows 10?", + "description": "Learn how to install and test ClickHouse on Windows 10 using WSL 2. Includes setup, troubleshooting, and running a test environment.", + "date": "2023-04-24", + "tags": [ + "Tools and Utilities" + ], + "keywords": [ + "Windows 10" + ] + }, + { + "title": "How to Increase the Number of Threads in ClickHouse", + "description": "Learn how to configure the Global Thread pool in ClickHouse by adjusting settings like `max_thread_pool_size`, `thread_pool_queue_size`, and `max_thread_pool_free_size`.", + "date": "2023-03-01", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Available Threads" + ] + }, + { + "title": "What is OLAP?", + "description": "OLAP stands for Online Analytical Processing. It is a broad term that can be looked at from two perspectives: technical and business.", + "date": "2021-09-01", + "tags": [ + "Concepts" + ], + "keywords": [ + "OLAP" + ] + }, + { + "title": "Change the prompt in clickhouse-client", + "description": "This article explains how to change the prompt in your Clickhouse client and clickhouse-local terminal window from :) to a prefix followed by :)", + "date": "2023-11-16", + "tags": [ + "Settings", + "Native Clients and Interfaces" + ], + "keywords": [ + "ClickHouse Client", + "Change Prompt" + ] + }, + { + "title": "How to filter a ClickHouse table by an array-column?", + "description": "Knowledgebase article on how to filter a ClickHouse table by an array-column.", + "date": "2024-12-17", + "tags": [ + "Data Modelling", + "Functions" + ], + "keywords": [ + "Filter", + "Array-Column" + ] + }, + { + "title": "How to use array join to extract and query varying attributes using map keys and values", + "description": "Simple example to illustrate how to use array join to extract and query varying attributes using map keys and values", + "date": "2024-06-21", + "tags": [ + "Functions" + ], + "keywords": [ + "arrayJoin" + ] + }, + { + "date": "2023-03-24", + "title": "How can I do partitioned writes by year and month on S3?", + "description": "Learn how to write partitioned data by year and month to an S3 bucket in ClickHouse, using a custom path structure for organizing the data.", + "tags": [ + "Data Export", + "Native Clients and Interfaces" + ], + "keywords": [ + "S3", + "Partitioned Writes" + ] + }, + { + "title": "Why is my primary key not used? How can I check?", + "description": "Covers a common reason why a primary key is not used in ordering and how we can confirm", + "date": "2024-12-12", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Primary Key" + ] + }, + { + "title": "Tips and tricks on optimizing basic data types in ClickHouse", + "description": "Tips and tricks on optimizing basic data types in ClickHouse", + "date": "2024-07-02", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Optimizing Basic Data Types" + ] + }, + { + "title": "How to import JSON into ClickHouse?", + "description": "There are multiple JSON variations among them, but the most commonly used for data ingestion is JSONEachRow. It expects one JSON object per row, each object separated by a newline.", + "date": "2023-03-20", + "tags": [ + "Data Ingestion" + ], + "keywords": [ + "Import JSON" + ] + }, + { + "title": "Resolving Timeout Errors with `remote` and `remoteSecure` Table Functions", + "description": "Learn how to fix timeout errors when using `remote` or `remoteSecure` table functions in ClickHouse by adjusting the connection timeout settings.", + "date": "2023-03-20", + "tags": [ + "Errors and Exceptions" + ], + "keywords": [ + "Connection tries failed" + ] + }, + { + "title": "Common RBAC queries", + "description": "Queries to help grant specific permissions to users.", + "date": "2023-09-28", + "tags": [ + "Security and Authentication", + "Managing Cloud" + ], + "keywords": [ + "RBAC", + "Queries" + ] + }, + { + "title": "How to Measure Query Processing Time Without Returning Rows", + "description": "Learn how to use the `FORMAT Null` option in ClickHouse to measure query processing time without returning any rows to the client.", + "date": "2023-06-07", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Query Processing Time" + ] + }, + { + "title": "Marketplace", + "description": "Learn how to use CSP marketplaces to subscribe to ClickHouse Cloud.", + "date": "2022-12-06", + "tags": [ + "Managing Cloud" + ], + "keywords": [ + "CSP Marketplaces" + ] + }, + { + "title": "How do I use NodeJS with @clickhouse/client", + "description": "Learn how to use @clickhouse/client in a Node.js application to interact with ClickHouse and perform queries.", + "date": "2023-11-22", + "tags": [ + "Language Clients" + ], + "keywords": [ + "NodeJS" + ] + }, + { + "title": "How to Ingest Data from Kafka into ClickHouse", + "description": "Learn how to ingest data from a Kafka topic into ClickHouse using the Kafka table engine, materialized views, and MergeTree tables.", + "date": "2024-04-27", + "tags": [ + "Data Ingestion" + ], + "keywords": [ + "Kafka" + ] + }, + { + "title": "Execute SYSTEM Statements on All Nodes in ClickHouse Cloud", + "description": "Learn how to use `ON CLUSTER` and `clusterAllReplicas` to execute SYSTEM statements and queries across all nodes in a ClickHouse Cloud service.", + "date": "2023-03-01", + "tags": [ + "Deployments and Scaling" + ], + "keywords": [ + "clusterAllReplicas" + ] + }, + { + "title": "Identifying Expensive Queries by Memory Usage in ClickHouse", + "description": "Learn how to use the `system.query_log` table to find the most memory-intensive queries in ClickHouse, with examples for clustered and standalone setups.", + "date": "2023-06-07", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Expensive Queries", + "Memory Usage" + ] + }, + { + "title": "Who is using ClickHouse?", + "description": "Being an open-source product makes this question not so straightforward to answer. You do not have to tell anyone if you want to start using ClickHouse, you just go grab source code or pre-compiled packages.", + "date": "2021-09-01", + "tags": [ + "Use Cases" + ] + }, + { + "title": "How do I solve TOO MANY PARTS error during an INSERT...SELECT?", + "description": "Resolve the TOO_MANY_PARTS error in ClickHouse during an `INSERT...SELECT` by tuning expert-level settings for larger blocks and increasing partition thresholds.", + "date": "2023-07-21", + "tags": [ + "Settings", + "Errors and Exceptions" + ] + }, + { + "title": "Which ClickHouse version to use in production?", + "description": "First of all, let\u2019s discuss why people ask this question in the first place. There are two key reasons...", + "date": "2021-09-01", + "tags": [ + "Concepts", + "Performance and Optimizations" + ], + "keywords": [ + "Production Version" + ] + }, + { + "title": "Recommended Maximum Databases, Tables, Partitions, and Parts in ClickHouse", + "description": "Learn the recommended maximum limits for databases, tables, partitions, and parts in a ClickHouse cluster to ensure optimal performance.", + "date": "2021-09-01", + "tags": [ + "Performance and Optimizations", + "Deployments and Scaling" + ], + "keywords": [ + "limits" + ] + }, + { + "title": "AWS PrivateLink setup to expose private RDS for ClickPipes", + "description": "Setup steps to expose a private RDS via AWS PrivateLink to ClickPipes.", + "date": "2024-11-27", + "tags": [ + "Security and Authentication", + "Managing Cloud" + ], + "keywords": [ + "AWS PrivateLink", + "Private RDS", + "ClickPipes" + ] + }, + { + "title": "AWS PrivateLink setup to expose MSK for ClickPipes", + "description": "Setup steps to expose a private MSK via MSK multi-VPC connectivity to ClickPipes.", + "date": "2024-11-27", + "tags": [ + "Security and Authentication", + "Managing Cloud" + ], + "keywords": [ + "AWS PrivateLink", + "MSK", + "MSK multi-VPC", + "ClickPipes" + ] + }, + { + "title": "How to use the exchange command to switch tables", + "description": "How to use the exchange command to switch tables", + "date": "2024-11-21", + "tags": [ + "Managing Data" + ], + "keywords": [ + "EXCHANGE" + ] + }, + { + "title": "DB::Exception: Part XXXXX intersects previous part YYYYY. It is a bug or a result of manual intervention in the ZooKeeper data.", + "date": "2023-05-02", + "description": "This article explains how to resolve the DB::Exception error related to intersecting parts in ClickHouse, often caused by a race condition or manual intervention in the ZooKeeper data.", + "tags": [ + "Errors and Exceptions", + "System Tables" + ], + "keywords": [ + "Part Intersects", + "system.replicas" + ] + }, + { + "title": "Setting a limit on query execution time", + "description": "How to enforce limit on max query execution time", + "date": "2022-07-10", + "tags": [ + "Managing Cloud", + "Settings" + ] + }, + { + "date": "2023-03-24", + "title": "How to check what code is currently running on a server?", + "description": "ClickHouse provides introspection tools like `system.stack_trace` for inspecting what code is currently running on each server thread, helping with debugging and performance monitoring.", + "tags": [ + "Server Admin" + ] + }, + { + "title": "JSON Extract example", + "description": "A short example on how to extract base types from JSON", + "date": "2021-09-01", + "tags": [ + "Data Formats" + ], + "keywords": [ + "JSON", + "extract base types" + ] + }, + { + "title": "Can I use ClickHouse as a key-value storage?", + "description": "The short answer is **\"no\"**. The key-value workload is among top positions in the list of cases when **NOT** to use ClickHouse.", + "date": "2021-09-01", + "tags": [ + "Concepts", + "Use Cases" + ], + "keywords": [ + "Key-Value Storage" + ] + }, + { + "date": "2024-04-22", + "title": "How to build LLVM and clang on Linux", + "description": "Commands to build LLVM and clang on Linux.", + "tags": [ + "Community", + "Tools and Utilities" + ], + "keywords": [ + "contributing", + "llvm", + "clang" + ] + }, + { + "title": "How do I export PostgreSQL data to Parquet, CSV or JSON?", + "date": "2023-03-22", + "description": "Learn how to export PostgreSQL data to Parquet, CSV, or JSON formats using `clickhouse-local` with various examples.", + "tags": [ + "Data Export", + "Data Formats" + ], + "keywords": [ + "PostgreSQL", + "Parquet", + "CSV", + "JSON" + ] + }, + { + "title": "Can I use ClickHouse as a time-series database?", + "description": "ClickHouse is a generic data storage solution for OLAP workloads, while there are many specialized time-series database management systems.", + "date": "2021-09-01", + "tags": [ + "Concepts" + ], + "keywords": [ + "Time-Series Database" + ] + }, + { + "title": "Using Filtered Aggregates in ClickHouse", + "description": "Learn how to use filtered aggregates in ClickHouse with `-If` and `-Distinct` aggregate combinators to simplify query syntax and enhance analytics.", + "date": "2023-03-01", + "tags": [ + "Functions" + ], + "keywords": [ + "Filtered Aggregates" + ] + }, + { + "title": "Mapping of metrics used in system.dashboards to Prometheus metrics in `system.custom_metrics`", + "description": "Mapping of metrics used in system.dashboards to Prometheus metrics in system.custom_metrics", + "date": "2024-07-23", + "tags": [ + "System Tables" + ], + "keywords": [ + "Metrics", + "system.dashboards", + "system.custom_metrics" + ] } -] +] \ No newline at end of file From b767856ada7e13d5e98705378edcd1f1187e96e7 Mon Sep 17 00:00:00 2001 From: Kuba Kaflik Date: Tue, 15 Apr 2025 09:08:00 +0200 Subject: [PATCH 4/5] Apply suggestions from code review Co-authored-by: Pete Hampton --- .../integrations/data-ingestion/clickpipes/aws-privatelink.md | 2 +- knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md b/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md index 5afeb4ce0ca..f9b3a0e2f28 100644 --- a/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md +++ b/docs/integrations/data-ingestion/clickpipes/aws-privatelink.md @@ -63,7 +63,7 @@ Update your MSK cluster policy and add `072088201116` to the allowed principals See AWS guide for [attaching a cluster policy](https://docs.aws.amazon.com/msk/latest/developerguide/mvpc-cluster-owner-action-policy.html) for more details. ::: -Follow our [MSK setup guide for ClickPipes](/knowledgebase/aws-privatelink-setup-for-msk-clickpipes) to set up the connection. +Follow our [MSK setup guide for ClickPipes](/knowledgebase/aws-privatelink-setup-for-msk-clickpipes) to learn how to set up the connection. ### VPC endpoint service {#vpc-endpoint-service} diff --git a/knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx b/knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx index dc3c34d5be9..215bf0811ae 100644 --- a/knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx +++ b/knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx @@ -1,7 +1,7 @@ --- title: AWS PrivateLink setup to expose MSK for ClickPipes description: Setup steps to expose a private MSK via MSK multi-VPC connectivity to ClickPipes. -date: 2024-11-27 +date: 2025-4-15 tags: ['Security and Authentication', 'Managing Cloud'] keywords: ['AWS PrivateLink', 'MSK', 'ClickPipes'] --- @@ -15,7 +15,7 @@ This guide will get you started with setting up a **MSK multi-VPC** to be used w ## Requirements {#requirements} -MSK cluster VPC must be located in one of our ClickPipes regions. See [ClickPipes regions](/integrations/data-ingestion/clickpipes/aws-privatelink.md#aws-privatelink-regions) for the list of supported regions. +Your MSK cluster VPC must be located in one of our ClickPipes regions. See [ClickPipes regions](/integrations/data-ingestion/clickpipes/aws-privatelink.md#aws-privatelink-regions) for the list of supported regions. ## Enabling multi-VPC connectivity {#enabling-multi-vpc-connectivity} From 0968d900050c3250162d247216708edb51248a5a Mon Sep 17 00:00:00 2001 From: Kuba Kaflik Date: Tue, 15 Apr 2025 09:17:01 +0200 Subject: [PATCH 5/5] fixes --- ...s-privatelink-setup-for-msk-clickpipes.mdx | 32 +- static/knowledgebase_toc.json | 2555 ++++++++--------- 2 files changed, 1293 insertions(+), 1294 deletions(-) diff --git a/knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx b/knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx index 215bf0811ae..8c5ced6d806 100644 --- a/knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx +++ b/knowledgebase/aws-privatelink-setup-for-msk-clickpipes.mdx @@ -11,11 +11,11 @@ keywords: ['AWS PrivateLink', 'MSK', 'ClickPipes'] ## Overview {#overview} -This guide will get you started with setting up a **MSK multi-VPC** to be used with [ClickPipes reverse private endpoint](/integrations/data-ingestion/clickpipes/aws-privatelink.md#msk-multi-vpc). +This guide will get you started with setting up a **MSK multi-VPC** to be used with [ClickPipes reverse private endpoint](/integrations/clickpipes/aws-privatelink#msk-multi-vpc). ## Requirements {#requirements} -Your MSK cluster VPC must be located in one of our ClickPipes regions. See [ClickPipes regions](/integrations/data-ingestion/clickpipes/aws-privatelink.md#aws-privatelink-regions) for the list of supported regions. +Your MSK cluster VPC must be located in one of our ClickPipes regions. See [ClickPipes regions](/integrations/clickpipes/aws-privatelink#aws-privatelink-regions) for the list of supported regions. ## Enabling multi-VPC connectivity {#enabling-multi-vpc-connectivity} @@ -35,23 +35,23 @@ Your MSK cluster VPC must be located in one of our ClickPipes regions. See [Clic { "Version": "2012-10-17", "Statement": [ - { - "Effect": "Allow", - "Principal": { - "AWS": [ - "arn:aws:iam::072088201116:root" - ] - }, - "Action": [ - "kafka-cluster:Connect", - "kafka-cluster:DescribeCluster", - "kafka-cluster:ListClusters" - ] - } + { + "Effect": "Allow", + "Principal": { + "AWS": [ + "arn:aws:iam::072088201116:root" + ] + }, + "Action": [ + "kafka-cluster:Connect", + "kafka-cluster:DescribeCluster", + "kafka-cluster:ListClusters" + ] + } ] } ``` ## Creating reverse private endpoint {#creating-reverse-private-endpoint} -Follow reverse private endpoint creation steps in the [ClickPipes documentation](/integrations/data-ingestion/clickpipes/aws-privatelink.md#creating-clickpipe). +Follow reverse private endpoint creation steps in the [ClickPipes documentation](/integrations/clickpipes/aws-privatelink#creating-clickpipe). diff --git a/static/knowledgebase_toc.json b/static/knowledgebase_toc.json index 85622272651..19b44571137 100644 --- a/static/knowledgebase_toc.json +++ b/static/knowledgebase_toc.json @@ -1,1280 +1,1279 @@ [ - { - "title": "Profiling ClickHouse with LLVM's XRay", - "date": "2024-11-13", - "description": "Learn how to profile ClickHouse using LLVM's XRay instrumentation profiler, visualize traces, and analyze performance.", - "tags": [ - "Performance and Optimizations", - "Tools and Utilities" - ] - }, - { - "date": "2023-06-07", - "title": "Why is ClickHouse Keeper recommended over ZooKeeper?", - "description": "ClickHouse Keeper improves upon ZooKeeper with features like reduced disk space usage, faster recovery, and less memory consumption, offering better performance for ClickHouse clusters.", - "tags": [ - "Core Data Concepts" - ], - "keywords": [ - "ClickHouse Keeper", - "ZooKeeper" - ] - }, - { - "title": "Let's calculate pi using SQL", - "description": "It's Pi Day! Let's calculate pi using ClickHouse SQL", - "date": "2023-03-14", - "tags": [ - "Use Cases" - ], - "keywords": [ - "Calculate Pi", - "SQL" - ] - }, - { - "title": "How do I contribute code to ClickHouse?", - "description": "ClickHouse is an open-source project developed on GitHub. As customary, contribution instructions are published in CONTRIBUTING file in the root of the source code repository.", - "date": "2021-09-01", - "tags": [ - "Community" - ], - "keywords": [ - "Contributing", - "Opensource" - ] - }, - { - "date": "2023-05-02", - "title": "When are TTL rules applied, and do we have control over it?", - "description": "TTL rules in ClickHouse are eventually applied, and you can control when they are executed using the `merge_with_ttl_timeout` setting. Learn how to force TTL application and manage background threads for TTL execution.", - "tags": [ - "Core Data Concepts" - ], - "keywords": [ - "TTL" - ] - }, - { - "title": "How to Configure Settings for a User in ClickHouse", - "description": "Learn how to define settings in ClickHouse for individual queries, client sessions, or specific users using `SET` and `ALTER USER` commands.", - "date": "2023-03-01", - "tags": [ - "Settings" - ], - "keywords": [ - "SET", - "ALTER", - "User", - "Query", - "Session" - ] - }, - { - "date": "2024-04-17", - "description": "Learn how to search across nodes for tables with a wildcard.", - "title": "Searching across nodes for tables with a wildcard", - "tags": [ - "Deployments and Scaling" - ], - "keywords": [ - "search nodes", - "query_log", - "wildcard", - "table prefix" - ] - }, - { - "title": "How to Check Users Assigned to Roles and Vice Versa", - "description": "Learn how to query ClickHouse's `system.role_grants` to find users assigned to roles and roles assigned to specific users.", - "date": "2023-09-07", - "tags": [ - "Server Admin", - "System Tables", - "Managing Cloud" - ], - "keywords": [ - "User Roles" - ] - }, - { - "title": "What if I have a problem with encodings when using Oracle via ODBC?", - "description": "If you use Oracle as a source of ClickHouse external dictionaries via Oracle ODBC driver, you need to set the correct value for the `NLS_LANG` environment variable in `/etc/default/clickhouse`.", - "date": "2022-04-22", - "tags": [ - "Native Clients and Interfaces" - ], - "keywords": [ - "Oracle", - "ODBC" - ] - }, - { - "title": "How to Use Parameterized Views in ClickHouse", - "description": "Learn how to create and query parameterized views in ClickHouse for dynamic data slicing based on query-time parameters.", - "date": "2023-08-01", - "tags": [ - "Use Cases" - ], - "keywords": [ - "Parameterized Views" - ] - }, - { - "title": "Why can't I see my data in a dictionary in ClickHouse Cloud?", - "description": "There is an issue where data in dictionaries may not be visible immediately after creation.", - "date": "2024-04-12", - "tags": [ - "Managing Cloud", - "Data Modelling" - ], - "keywords": [ - "Dictionaries" - ] - }, - { - "date": "2023-10-26", - "title": "Can you use ClickHouse for vector search?", - "description": "Learn how to use ClickHouse for vector search, including storing embeddings and searching with distance functions like cosine similarity.", - "tags": [ - "Use Cases", - "Concepts" - ], - "keywords": [ - "Vector Search" - ] - }, - { - "title": "How to insert all rows from one table to another?", - "description": "Knowledgebase article on how to insert all rows from one table to another.", - "date": "2024-12-17", - "tags": [ - "Data Ingestion" - ], - "keywords": [ - "Insert from a table" - ] - }, - { - "date": "2023-10-25", - "title": "About Quotas and Query complexity", - "tags": [ - "Managing Cloud" - ], - "keywords": [ - "Quotas", - "Query Complexity" - ], - "description": "Quotas and Query Complexity are powerful ways to limit and restrict what users can do in ClickHouse. This KB article shows examples on how to apply these two different approaches." - }, - { - "title": "Does ClickHouse support multi-region replication?", - "description": "The short answer is yes. However, we recommend keeping latency between all regions/datacenters in two-digit range, otherwise write performance will suffer as it goes through distributed consensus protocol.", - "date": "2022-04-22", - "tags": [ - "Deployments and Scaling", - "Managing Cloud" - ] - }, - { - "title": "Synchronous data reading", - "description": "The new setting `allow_asynchronous_read_from_io_pool_for_merge_tree` allows the number of reading threads (streams) to be higher than the number of threads in the rest of the query execution pipeline.", - "date": "2023-03-01", - "tags": [ - "Settings", - "Performance and Optimizations" - ], - "keywords": [ - "Synchronous", - "Asynchronous", - "Data Reading" - ] - }, - { - "title": "Why not use something like MapReduce?", - "description": "We can refer to systems like MapReduce as distributed computing systems in which the reduce operation is based on distributed sorting. The most common open-source solution in this class is Apache Hadoop.", - "date": "2021-09-01", - "tags": [ - "Concepts" - ], - "keywords": [ - "MapReduce" - ] - }, - { - "title": "Resolving SSL Certificate Verify Error in ClickHouse", - "description": "Learn how to resolve the SSL Exception `CERTIFICATE_VERIFY_FAILED` error.", - "date": "2023-05-02", - "tags": [ - "Security and Authentication", - "Errors and Exceptions" - ], - "keywords": [ - "Error", - "SSL Certificate" - ] - }, - { - "title": "Are Materialized Views inserted synchronously?", - "description": "This KB article explores whether Materialized Views are inserted synchronously", - "date": "2023-03-01", - "tags": [ - "Data Modelling" - ], - "keywords": [ - "Materialized View" - ] - }, - { - "title": "How to ingest Parquet files from an S3 bucket", - "description": "Learn the basics of using the S3 table engine in ClickHouse to ingest and query Parquet files from an S3 bucket, including setup, access permissions, and data import examples.", - "date": "2023-03-22", - "tags": [ - "Data Ingestion" - ], - "keywords": [ - "Parquet", - "S3 Bucket" - ] - }, - { - "title": "How to confirm if a Projection is used by the query?", - "date": "2022-07-10", - "description": "Learn how to check if a projection is used in ClickHouse queries by testing with sample data and using EXPLAIN to verify projection usage.", - "tags": [ - "Data Modelling" - ], - "keywords": [ - "Projection" - ] - }, - { - "title": "How to Export Data from ClickHouse to a File", - "description": "Learn various methods to export data from ClickHouse, including `INTO OUTFILE`, the File table engine, and command-line redirection.", - "date": "2023-03-22", - "tags": [ - "Data Export" - ], - "keywords": [ - "Exporting Data", - "INTO OUTFILE", - "File Table Engine" - ] - }, - { - "date": "2025-01-16", - "title": "How do I remove the default user?", - "description": "Learn how to remove the default user when running ClickHouse Server.", - "tags": [ - "Server Admin" - ], - "words": [ - "Remove Default User", - "ClickHouse Server" - ] - }, - { - "title": "Improving Map Lookup Performance in ClickHouse", - "description": "Learn how to optimize Map column lookups in ClickHouse for better query performance by materializing specific keys as standalone columns.", - "date": "2022-10-30", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Map Performance" - ] - }, - { - "title": "How to Verify Query Cache Usage in ClickHouse", - "description": "Learn how to check if query cache is being utilized in ClickHouse using `clickhouse-client` trace logs or SQL commands.", - "date": "2023-06-07", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Query Cache" - ] - }, - { - "title": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", - "description": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", - "date": "2024-05-29", - "tags": [ - "Native Clients and Interfaces" - ], - "keywords": [ - "Docker", - "ODBC", - "Microsoft SQL Server", - "MSSQL" - ] - }, - { - "title": "Importing and Querying JSON Array Objects in ClickHouse", - "description": "Learn how to import JSON array objects into ClickHouse and perform advanced queries using JSON functions and array operations.", - "date": "2023-03-24", - "tags": [ - "Data Formats" - ], - "keywords": [ - "JSON Array Objects" - ] - }, - { - "date": "2024-02-14", - "title": "How to achieve data read consistency in ClickHouse?", - "description": "Learn how to ensure data consistency when reading from ClickHouse, whether you're connected to the same node or a random node.", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Read Consistency" - ] - }, - { - "title": "Importing GeoJSON with a deeply nested object array", - "description": "\u201cImporting GeoJSON with a deeply nested object array\u201c", - "date": "2024-12-18", - "tags": [ - "Data Formats" - ], - "keywords": [ - "GeoJSON" - ] - }, - { - "title": "Simple example flow for extracting JSON data using a landing table with a Materialized View", - "description": "Simple example flow for extracting JSON data using a landing table with a Materialized View", - "date": "2024-05-20", - "tags": [ - "Data Formats" - ], - "keywords": [ - "JSON", - "Landing Table", - "Materialized View" - ] - }, - { - "title": "How to Identify Queries Using Materialized Views in ClickHouse", - "description": "Learn how to query ClickHouse logs to identify all queries involving Materialized Views within a specified time range.", - "date": "2023-03-24", - "tags": [ - "System Tables" - ], - "keywords": [ - "Materialized Views", - "create_table_query" - ] - }, - { - "date": "2023-01-14", - "title": "Comparing metrics between queries in decibels", - "description": "A query to compare metrics between two queries in ClickHouse.", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "compare queries", - "compare metrics", - "query performance" - ] - }, - { - "date": "2023-06-07", - "title": "Automatic schema migration tools for ClickHouse", - "description": "Learn about automatic schema migration tools for ClickHouse and how to manage changing database schemas over time.", - "tags": [ - "Tools and Utilities" - ], - "keywords": [ - "Automatic Schema Migration" - ] - }, - { - "title": "How to Validate if Two Queries Return the Same Result-sets", - "description": "Learn how to validate that two ClickHouse queries produce identical result-sets using hash functions and comparison techniques.", - "date": "2023-05-04", - "tags": [ - "Functions" - ], - "keywords": [ - "Validate", - "Resultsets", - "Hash Functions" - ] - }, - { - "title": "Python quick example using HTTP requests module", - "description": "An example using Python and requests module to write and read to ClickHouse", - "date": "2022-07-10", - "tags": [ - "Native Clients and Interfaces" - ], - "keywords": [ - "Python" - ] - }, - { - "title": "Backing up a specific partition", - "description": "How can I backup a specific partition in ClickHouse?", - "date": "2024-02-14", - "tags": [ - "Managing Data" - ], - "keywords": [ - "Backup", - "Partition" - ] - }, - { - "title": "Is it possible to delete old records from a ClickHouse table?", - "description": "The short answer is \"yes\". ClickHouse has multiple mechanisms that allow freeing up disk space by removing old data. Each mechanism is aimed for different scenarios.", - "date": "2022-10-19", - "tags": [ - "Deleting Data" - ], - "keywords": [ - "Delete Old Records" - ] - }, - { - "title": "How to Create a ClickHouse Dictionary with String Keys and Values", - "description": "Learn how to create a ClickHouse dictionary using string keys and values from a MergeTree table as the source, with examples of setup and usage.", - "date": "2023-07-10", - "tags": [ - "Data Modelling" - ], - "keywords": [ - "Dictionary", - "String Keys", - "String Values" - ] - }, - { - "date": "2023-08-13", - "title": "Does ClickHouse support row-level and column-level security?", - "description": "Learn about row-level and column-level access restrictions in ClickHouse and ClickHouse Cloud, and how to implement role-based access control (RBAC) with policies.", - "tags": [ - "Security and Authentication" - ], - "keywords": [ - "Row-Level", - "Column-Level", - "Security" - ] - }, - { - "title": "Can you PIVOT in ClickHouse?", - "description": "ClickHouse doesn't have a PIVOT clause, but we can get close to this functionality using aggregate function combinators. Let's see how to do this using the UK housing prices dataset.", - "date": "2024-12-11", - "tags": [ - "Data Modelling", - "Core Data Concepts" - ], - "keywords": [ - "PIVOT", - "Aggregate Function Combinators" - ] - }, - { - "title": "Resolving \"Cannot Append Data in Parquet Format\" Error in ClickHouse", - "description": "Are you getting the error \"Cannot append data in format Parquet to file\" error in ClickHouse? Let's take a look at how to resolve it.", - "date": "2023-03-25", - "tags": [ - "Errors and Exceptions", - "Data Formats" - ], - "keywords": [ - "Parquet", - "Cannot Append Data" - ] - }, - { - "title": "Adding a column to a table", - "description": "In this guide, we'll learn how to add a column to an existing table.", - "date": "2024-12-18", - "tags": [ - "Data Modelling" - ], - "keywords": [ - "Add Column" - ] - }, - { - "title": "Resolving \"Too Many Parts\" Error in ClickHouse", - "description": "Learn how to address the \"Too many parts\" error in ClickHouse by optimizing insert rates, configuring MergeTree settings, and managing partitions effectively.", - "date": "2023-03-20", - "tags": [ - "Errors and Exceptions" - ], - "keywords": [ - "Too many parts" - ] - }, - { - "title": "How to Check Your ClickHouse Cloud Service State", - "description": "Learn how to use the ClickHouse Cloud API to check if your service is stopped, idle, or running without waking it up.", - "date": "2023-11-16", - "tags": [ - "Managing Cloud" - ], - "keywords": [ - "Cloud Service State" - ] - }, - { - "title": "How to connect to ClickHouse using SSH Keys", - "description": "How to connect to ClickHouse and ClickHouse Cloud using SSH Keys", - "date": "2024-07-25", - "tags": [ - "Managing Cloud", - "Security and Authentication" - ], - "keywords": [ - "Cloud", - "SSH" - ] - }, - { - "title": "How do I resolve Ingest Failures After ClickHouse 23.9 Release?", - "description": "Learn how to resolve ingest failures caused by stricter grant checking introduced in ClickHouse 23.9 for tables using `async_inserts`. Update grants to fix errors.", - "date": "2022-11-17", - "tags": [ - "Errors and Exceptions" - ], - "keywords": [ - "GRANT", - "Permission Errors" - ] - }, - { - "title": "How to Identify the Most Expensive Queries in ClickHouse", - "description": "Learn how to use the `query_log` table in ClickHouse to identify the most memory and CPU-intensive queries across distributed nodes.", - "date": "2023-03-26", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Expensive Queries" - ] - }, - { - "date": "2023-03-17", - "title": "Useful queries for troubleshooting", - "description": "A collection of handy queries for troubleshooting ClickHouse, including monitoring table sizes, long-running queries, and errors.", - "tags": [ - "Settings" - ], - "keywords": [ - "Useful Queries" - ] - }, - { - "title": "How can I use the new JSON Data Type with Kafka?", - "description": "Learn how to load JSON messages from Apache Kafka directly into a single JSON column in ClickHouse using the Kafka table engine and JSON data type.", - "date": "2024-11-06", - "tags": [ - "Data Formats", - "Data Ingestion" - ] - }, - { - "title": "How to create a table that can query multiple remote clusters", - "description": "How to create a table that can query multiple remote clusters", - "date": "2024-07-03", - "tags": [ - "Deployments and Scaling" - ], - "keywords": [ - "Query", - "Remote Cluster" - ] - }, - { - "title": "Fix the Developer Verification Error in MacOS", - "description": "Learn how to resolve the MacOS developer verification error when running ClickHouse commands, using either System Settings or the terminal.", - "date": "2024-01-09", - "tags": [ - "Errors and Exceptions" - ], - "keywords": [ - "Developer Verification", - "MacOS" - ] - }, - { - "title": "Terraform example on how to use Cloud API", - "description": "This covers an example of how you can use terraform to create/delete clusters using the API", - "Date": "2023-09-02", - "tags": [ - "Native Clients and Interfaces" - ], - "keywords": [ - "Terraform" - ] - }, - { - "title": "How to Enable SSL with Let's Encrypt on a Single ClickHouse Server", - "description": "Learn how to set up SSL for a single ClickHouse server using Let's Encrypt, including certificate issuance, configuration, and validation.", - "date": "2024-12-11", - "tags": [ - "Security and Authentication" - ], - "keywords": [ - "SSL", - "Let/`s Encrypt" - ] - }, - { - "title": "How to Ignore Incorrect Settings in ClickHouse", - "description": "Learn how to use the `skip_check_for_incorrect_settings` option to allow ClickHouse to start even when user-level settings are specified incorrectly.", - "date": "2023-03-01", - "tags": [ - "Settings" - ], - "keywords": [ - "Ignore Incorrect Settings" - ] - }, - { - "title": "ODBC authentication failed error when using the Power BI ClickHouse connector", - "description": "ODBC authentication failed error when using the Power BI ClickHouse connector", - "date": "2024-07-10", - "tags": [ - "Native Clients and Interfaces", - "Errors and Exceptions" - ], - "keywords": [ - "ODBC", - "Power BI Connector", - "Authentication Failed" - ] - }, - { - "date": "2025-01-10", - "title": "Why is ClickHouse logging so verbose by default?", - "description": "Learn why the ClickHouse developers chose to set a verbose logging level by default.", - "tags": [ - "Settings" - ], - "keywords": [ - "Default Logging" - ] - }, - { - "date": "2023-06-07", - "title": "How do I view the number of active or queued mutations?", - "description": "Monitor the number of active or queued mutations in ClickHouse, especially when performing `ALTER` or `UPDATE` operations. Use the `system.mutations` table for tracking mutations.", - "tags": [ - "System Tables" - ], - "keywords": [ - "Active Mutations", - "Queued Mutations" - ] - }, - { - "title": "Alter User Settings Exception", - "description": "Handing the an exception thrown when altering user settings", - "date": "2023-08-26", - "tags": [ - "Settings", - "Errors and Exceptions" - ], - "keywords": [ - "Exception", - "User Settings" - ] - }, - { - "title": "Configuring CAP_IPC_LOCK and CAP_SYS_NICE Capabilities in Docker", - "description": "Learn how to resolve Docker capability warnings for `CAP_IPC_LOCK` and `CAP_SYS_NICE` when running ClickHouse in a container.", - "date": "2023-06-07", - "tags": [ - "Errors and Exceptions" - ], - "keywords": [ - "Docker", - "CAP_IPC_LOCK", - "CAP_SYS_NICE" - ] - }, - { - "title": "How to calculate the ratio of empty/zero values in every column in a table", - "description": "Learn how to calculate the ratio of empty or zero values in every column of a ClickHouse table to optimize sparse column serialization.", - "date": "2023-05-18", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Empty/Zero Ratio", - "Calculate" - ] - }, - { - "title": "Managing ClickHouse Cloud Service with API and cURL", - "description": "Learn how to start, stop, and resume a ClickHouse Cloud service using API endpoints and cURL commands.", - "date": "2023-06-07", - "tags": [ - "Managing Cloud", - "Tools and Utilities" - ], - "keywords": [ - "cURL", - "Manage Cloud", - "ClickHouse API" - ] - }, - { - "date": "2023-09-08", - "description": "Let's learn how to change your billing address in ClickHouse Cloud.", - "title": "How do I change my Billing Contact in ClickHouse Cloud?", - "tags": [ - "Managing Cloud" - ], - "keywords": [ - "Change Billing Contact", - "ClickHouse Cloud" - ] - }, - { - "title": "Mapping Windows Active Directory security groups to ClickHouse roles", - "description": "Example of mapping Windows Active Directory security groups to ClickHouse roles", - "date": "2024-05-20", - "tags": [ - "Tools and Utilities" - ], - "keywords": [ - "Windows" - ] - }, - { - "title": "How to output send logs level traces to file using the clickhouse-client", - "description": "How to output send logs level traces to file using the clickhouse-client", - "date": "2024-11-21", - "tags": [ - "Data Export" - ], - "keywords": [ - "logs level traces", - "clickhouse-client" - ] - }, - { - "title": "What is a columnar database?", - "description": "A columnar database stores the data of each column independently. This allows reading data from disk only for those columns that are used in any given query.", - "date": "2021-09-01", - "tags": [ - "Core Data Concepts" - ], - "keywords": [ - "Columnar Database" - ] - }, - { - "title": "Differences Between Official and 3rd-Party ClickHouse Builds", - "description": "Understand the key differences between official ClickHouse builds and 3rd-party builds, including updates, compatibility, and security considerations.", - "date": "2023-06-26", - "tags": [ - "Concepts" - ], - "keywords": [ - "official builds", - "third-party builds" - ] - }, - { - "date": "2023-03-01", - "title": "Capturing server logs of queries at the client", - "description": "Learn how to capture server logs at the client level, even with different log settings, using the `send_logs_level` client setting.", - "tags": [ - "Server Admin" - ], - "keywords": [ - "Server Logs" - ] - }, - { - "date": "2023-03-24", - "title": "How to quickly recreate a small table across different terminals", - "description": "Learn how to quickly recreate a small table and its data across different terminals using copy/paste for development environments.", - "tags": [ - "Tools and Utilities" - ], - "keywords": [ - "Recreate Table", - "Terminals" - ] - }, - { - "title": "How do I convert Files from Parquet to CSV or JSON?", - "description": "Learn how to use ClickHouse's `clickhouse-local` tool to easily convert Parquet files to CSV or JSON formats.", - "date": "2023-03-22", - "tags": [ - "Data Sources", - "Data Formats" - ], - "keywords": [ - "Converting", - "Parquet", - "CSV", - "JSON" - ] - }, - { - "title": "How do I export MySQL Data to Parquet, CSV, or JSON Using ClickHouse", - "description": "Learn how to use the `clickhouse-local` tool to export MySQL data into formats like Parquet, CSV, or JSON quickly and efficiently.", - "date": "2023-03-21", - "tags": [ - "Data Formats", - "Data Export" - ], - "keywords": [ - "MySQL", - "Parquet", - "CSV", - "JSON" - ] - }, - { - "date": "2023-05-08", - "title": "A Python client working example for connecting to ClickHouse Cloud Service", - "description": "Learn how to connect to ClickHouse Cloud Service using Python with a step-by-step example using the clickhouse-connect driver.", - "tags": [ - "Language Clients" - ], - "keywords": [ - "Python", - "ClickHouse Cloud" - ] - }, - { - "title": "Using ClickHouse for Log Analytics", - "description": "ClickHouse is popular for logs and metrics analysis because of the real-time analytics capabilities provided. Ready to find out more?", - "date": "2023-05-10", - "tags": [ - "Use Cases" - ], - "keywords": [ - "Log Analytics" - ] - }, - { - "title": "What does \u201cClickHouse\u201d mean?", - "description": "Curious what ClickHouse means? Take a look inside this knowledge base article to find out!", - "date": "2021-09-01", - "tags": [ - "Concepts" - ], - "keywords": [ - "ClickHouse Meaning" - ] - }, - { - "title": "How do I Install ClickHouse on Windows 10?", - "description": "Learn how to install and test ClickHouse on Windows 10 using WSL 2. Includes setup, troubleshooting, and running a test environment.", - "date": "2023-04-24", - "tags": [ - "Tools and Utilities" - ], - "keywords": [ - "Windows 10" - ] - }, - { - "title": "How to Increase the Number of Threads in ClickHouse", - "description": "Learn how to configure the Global Thread pool in ClickHouse by adjusting settings like `max_thread_pool_size`, `thread_pool_queue_size`, and `max_thread_pool_free_size`.", - "date": "2023-03-01", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Available Threads" - ] - }, - { - "title": "What is OLAP?", - "description": "OLAP stands for Online Analytical Processing. It is a broad term that can be looked at from two perspectives: technical and business.", - "date": "2021-09-01", - "tags": [ - "Concepts" - ], - "keywords": [ - "OLAP" - ] - }, - { - "title": "Change the prompt in clickhouse-client", - "description": "This article explains how to change the prompt in your Clickhouse client and clickhouse-local terminal window from :) to a prefix followed by :)", - "date": "2023-11-16", - "tags": [ - "Settings", - "Native Clients and Interfaces" - ], - "keywords": [ - "ClickHouse Client", - "Change Prompt" - ] - }, - { - "title": "How to filter a ClickHouse table by an array-column?", - "description": "Knowledgebase article on how to filter a ClickHouse table by an array-column.", - "date": "2024-12-17", - "tags": [ - "Data Modelling", - "Functions" - ], - "keywords": [ - "Filter", - "Array-Column" - ] - }, - { - "title": "How to use array join to extract and query varying attributes using map keys and values", - "description": "Simple example to illustrate how to use array join to extract and query varying attributes using map keys and values", - "date": "2024-06-21", - "tags": [ - "Functions" - ], - "keywords": [ - "arrayJoin" - ] - }, - { - "date": "2023-03-24", - "title": "How can I do partitioned writes by year and month on S3?", - "description": "Learn how to write partitioned data by year and month to an S3 bucket in ClickHouse, using a custom path structure for organizing the data.", - "tags": [ - "Data Export", - "Native Clients and Interfaces" - ], - "keywords": [ - "S3", - "Partitioned Writes" - ] - }, - { - "title": "Why is my primary key not used? How can I check?", - "description": "Covers a common reason why a primary key is not used in ordering and how we can confirm", - "date": "2024-12-12", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Primary Key" - ] - }, - { - "title": "Tips and tricks on optimizing basic data types in ClickHouse", - "description": "Tips and tricks on optimizing basic data types in ClickHouse", - "date": "2024-07-02", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Optimizing Basic Data Types" - ] - }, - { - "title": "How to import JSON into ClickHouse?", - "description": "There are multiple JSON variations among them, but the most commonly used for data ingestion is JSONEachRow. It expects one JSON object per row, each object separated by a newline.", - "date": "2023-03-20", - "tags": [ - "Data Ingestion" - ], - "keywords": [ - "Import JSON" - ] - }, - { - "title": "Resolving Timeout Errors with `remote` and `remoteSecure` Table Functions", - "description": "Learn how to fix timeout errors when using `remote` or `remoteSecure` table functions in ClickHouse by adjusting the connection timeout settings.", - "date": "2023-03-20", - "tags": [ - "Errors and Exceptions" - ], - "keywords": [ - "Connection tries failed" - ] - }, - { - "title": "Common RBAC queries", - "description": "Queries to help grant specific permissions to users.", - "date": "2023-09-28", - "tags": [ - "Security and Authentication", - "Managing Cloud" - ], - "keywords": [ - "RBAC", - "Queries" - ] - }, - { - "title": "How to Measure Query Processing Time Without Returning Rows", - "description": "Learn how to use the `FORMAT Null` option in ClickHouse to measure query processing time without returning any rows to the client.", - "date": "2023-06-07", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Query Processing Time" - ] - }, - { - "title": "Marketplace", - "description": "Learn how to use CSP marketplaces to subscribe to ClickHouse Cloud.", - "date": "2022-12-06", - "tags": [ - "Managing Cloud" - ], - "keywords": [ - "CSP Marketplaces" - ] - }, - { - "title": "How do I use NodeJS with @clickhouse/client", - "description": "Learn how to use @clickhouse/client in a Node.js application to interact with ClickHouse and perform queries.", - "date": "2023-11-22", - "tags": [ - "Language Clients" - ], - "keywords": [ - "NodeJS" - ] - }, - { - "title": "How to Ingest Data from Kafka into ClickHouse", - "description": "Learn how to ingest data from a Kafka topic into ClickHouse using the Kafka table engine, materialized views, and MergeTree tables.", - "date": "2024-04-27", - "tags": [ - "Data Ingestion" - ], - "keywords": [ - "Kafka" - ] - }, - { - "title": "Execute SYSTEM Statements on All Nodes in ClickHouse Cloud", - "description": "Learn how to use `ON CLUSTER` and `clusterAllReplicas` to execute SYSTEM statements and queries across all nodes in a ClickHouse Cloud service.", - "date": "2023-03-01", - "tags": [ - "Deployments and Scaling" - ], - "keywords": [ - "clusterAllReplicas" - ] - }, - { - "title": "Identifying Expensive Queries by Memory Usage in ClickHouse", - "description": "Learn how to use the `system.query_log` table to find the most memory-intensive queries in ClickHouse, with examples for clustered and standalone setups.", - "date": "2023-06-07", - "tags": [ - "Performance and Optimizations" - ], - "keywords": [ - "Expensive Queries", - "Memory Usage" - ] - }, - { - "title": "Who is using ClickHouse?", - "description": "Being an open-source product makes this question not so straightforward to answer. You do not have to tell anyone if you want to start using ClickHouse, you just go grab source code or pre-compiled packages.", - "date": "2021-09-01", - "tags": [ - "Use Cases" - ] - }, - { - "title": "How do I solve TOO MANY PARTS error during an INSERT...SELECT?", - "description": "Resolve the TOO_MANY_PARTS error in ClickHouse during an `INSERT...SELECT` by tuning expert-level settings for larger blocks and increasing partition thresholds.", - "date": "2023-07-21", - "tags": [ - "Settings", - "Errors and Exceptions" - ] - }, - { - "title": "Which ClickHouse version to use in production?", - "description": "First of all, let\u2019s discuss why people ask this question in the first place. There are two key reasons...", - "date": "2021-09-01", - "tags": [ - "Concepts", - "Performance and Optimizations" - ], - "keywords": [ - "Production Version" - ] - }, - { - "title": "Recommended Maximum Databases, Tables, Partitions, and Parts in ClickHouse", - "description": "Learn the recommended maximum limits for databases, tables, partitions, and parts in a ClickHouse cluster to ensure optimal performance.", - "date": "2021-09-01", - "tags": [ - "Performance and Optimizations", - "Deployments and Scaling" - ], - "keywords": [ - "limits" - ] - }, - { - "title": "AWS PrivateLink setup to expose private RDS for ClickPipes", - "description": "Setup steps to expose a private RDS via AWS PrivateLink to ClickPipes.", - "date": "2024-11-27", - "tags": [ - "Security and Authentication", - "Managing Cloud" - ], - "keywords": [ - "AWS PrivateLink", - "Private RDS", - "ClickPipes" - ] - }, - { - "title": "AWS PrivateLink setup to expose MSK for ClickPipes", - "description": "Setup steps to expose a private MSK via MSK multi-VPC connectivity to ClickPipes.", - "date": "2024-11-27", - "tags": [ - "Security and Authentication", - "Managing Cloud" - ], - "keywords": [ - "AWS PrivateLink", - "MSK", - "MSK multi-VPC", - "ClickPipes" - ] - }, - { - "title": "How to use the exchange command to switch tables", - "description": "How to use the exchange command to switch tables", - "date": "2024-11-21", - "tags": [ - "Managing Data" - ], - "keywords": [ - "EXCHANGE" - ] - }, - { - "title": "DB::Exception: Part XXXXX intersects previous part YYYYY. It is a bug or a result of manual intervention in the ZooKeeper data.", - "date": "2023-05-02", - "description": "This article explains how to resolve the DB::Exception error related to intersecting parts in ClickHouse, often caused by a race condition or manual intervention in the ZooKeeper data.", - "tags": [ - "Errors and Exceptions", - "System Tables" - ], - "keywords": [ - "Part Intersects", - "system.replicas" - ] - }, - { - "title": "Setting a limit on query execution time", - "description": "How to enforce limit on max query execution time", - "date": "2022-07-10", - "tags": [ - "Managing Cloud", - "Settings" - ] - }, - { - "date": "2023-03-24", - "title": "How to check what code is currently running on a server?", - "description": "ClickHouse provides introspection tools like `system.stack_trace` for inspecting what code is currently running on each server thread, helping with debugging and performance monitoring.", - "tags": [ - "Server Admin" - ] - }, - { - "title": "JSON Extract example", - "description": "A short example on how to extract base types from JSON", - "date": "2021-09-01", - "tags": [ - "Data Formats" - ], - "keywords": [ - "JSON", - "extract base types" - ] - }, - { - "title": "Can I use ClickHouse as a key-value storage?", - "description": "The short answer is **\"no\"**. The key-value workload is among top positions in the list of cases when **NOT** to use ClickHouse.", - "date": "2021-09-01", - "tags": [ - "Concepts", - "Use Cases" - ], - "keywords": [ - "Key-Value Storage" - ] - }, - { - "date": "2024-04-22", - "title": "How to build LLVM and clang on Linux", - "description": "Commands to build LLVM and clang on Linux.", - "tags": [ - "Community", - "Tools and Utilities" - ], - "keywords": [ - "contributing", - "llvm", - "clang" - ] - }, - { - "title": "How do I export PostgreSQL data to Parquet, CSV or JSON?", - "date": "2023-03-22", - "description": "Learn how to export PostgreSQL data to Parquet, CSV, or JSON formats using `clickhouse-local` with various examples.", - "tags": [ - "Data Export", - "Data Formats" - ], - "keywords": [ - "PostgreSQL", - "Parquet", - "CSV", - "JSON" - ] - }, - { - "title": "Can I use ClickHouse as a time-series database?", - "description": "ClickHouse is a generic data storage solution for OLAP workloads, while there are many specialized time-series database management systems.", - "date": "2021-09-01", - "tags": [ - "Concepts" - ], - "keywords": [ - "Time-Series Database" - ] - }, - { - "title": "Using Filtered Aggregates in ClickHouse", - "description": "Learn how to use filtered aggregates in ClickHouse with `-If` and `-Distinct` aggregate combinators to simplify query syntax and enhance analytics.", - "date": "2023-03-01", - "tags": [ - "Functions" - ], - "keywords": [ - "Filtered Aggregates" - ] - }, - { - "title": "Mapping of metrics used in system.dashboards to Prometheus metrics in `system.custom_metrics`", - "description": "Mapping of metrics used in system.dashboards to Prometheus metrics in system.custom_metrics", - "date": "2024-07-23", - "tags": [ - "System Tables" - ], - "keywords": [ - "Metrics", - "system.dashboards", - "system.custom_metrics" - ] - } + { + "title": "Profiling ClickHouse with LLVM's XRay", + "date": "2024-11-13", + "description": "Learn how to profile ClickHouse using LLVM's XRay instrumentation profiler, visualize traces, and analyze performance.", + "tags": [ + "Performance and Optimizations", + "Tools and Utilities" + ] + }, + { + "date": "2023-06-07", + "title": "Why is ClickHouse Keeper recommended over ZooKeeper?", + "description": "ClickHouse Keeper improves upon ZooKeeper with features like reduced disk space usage, faster recovery, and less memory consumption, offering better performance for ClickHouse clusters.", + "tags": [ + "Core Data Concepts" + ], + "keywords": [ + "ClickHouse Keeper", + "ZooKeeper" + ] + }, + { + "title": "Let's calculate pi using SQL", + "description": "It's Pi Day! Let's calculate pi using ClickHouse SQL", + "date": "2023-03-14", + "tags": [ + "Use Cases" + ], + "keywords": [ + "Calculate Pi", + "SQL" + ] + }, + { + "title": "How do I contribute code to ClickHouse?", + "description": "ClickHouse is an open-source project developed on GitHub. As customary, contribution instructions are published in CONTRIBUTING file in the root of the source code repository.", + "date": "2021-09-01", + "tags": [ + "Community" + ], + "keywords": [ + "Contributing", + "Opensource" + ] + }, + { + "date": "2023-05-02", + "title": "When are TTL rules applied, and do we have control over it?", + "description": "TTL rules in ClickHouse are eventually applied, and you can control when they are executed using the `merge_with_ttl_timeout` setting. Learn how to force TTL application and manage background threads for TTL execution.", + "tags": [ + "Core Data Concepts" + ], + "keywords": [ + "TTL" + ] + }, + { + "title": "How to Configure Settings for a User in ClickHouse", + "description": "Learn how to define settings in ClickHouse for individual queries, client sessions, or specific users using `SET` and `ALTER USER` commands.", + "date": "2023-03-01", + "tags": [ + "Settings" + ], + "keywords": [ + "SET", + "ALTER", + "User", + "Query", + "Session" + ] + }, + { + "date": "2024-04-17", + "description": "Learn how to search across nodes for tables with a wildcard.", + "title": "Searching across nodes for tables with a wildcard", + "tags": [ + "Deployments and Scaling" + ], + "keywords": [ + "search nodes", + "query_log", + "wildcard", + "table prefix" + ] + }, + { + "title": "How to Check Users Assigned to Roles and Vice Versa", + "description": "Learn how to query ClickHouse's `system.role_grants` to find users assigned to roles and roles assigned to specific users.", + "date": "2023-09-07", + "tags": [ + "Server Admin", + "System Tables", + "Managing Cloud" + ], + "keywords": [ + "User Roles" + ] + }, + { + "title": "What if I have a problem with encodings when using Oracle via ODBC?", + "description": "If you use Oracle as a source of ClickHouse external dictionaries via Oracle ODBC driver, you need to set the correct value for the `NLS_LANG` environment variable in `/etc/default/clickhouse`.", + "date": "2022-04-22", + "tags": [ + "Native Clients and Interfaces" + ], + "keywords": [ + "Oracle", + "ODBC" + ] + }, + { + "title": "How to Use Parameterized Views in ClickHouse", + "description": "Learn how to create and query parameterized views in ClickHouse for dynamic data slicing based on query-time parameters.", + "date": "2023-08-01", + "tags": [ + "Use Cases" + ], + "keywords": [ + "Parameterized Views" + ] + }, + { + "title": "Why can't I see my data in a dictionary in ClickHouse Cloud?", + "description": "There is an issue where data in dictionaries may not be visible immediately after creation.", + "date": "2024-04-12", + "tags": [ + "Managing Cloud", + "Data Modelling" + ], + "keywords": [ + "Dictionaries" + ] + }, + { + "date": "2023-10-26", + "title": "Can you use ClickHouse for vector search?", + "description": "Learn how to use ClickHouse for vector search, including storing embeddings and searching with distance functions like cosine similarity.", + "tags": [ + "Use Cases", + "Concepts" + ], + "keywords": [ + "Vector Search" + ] + }, + { + "title": "How to insert all rows from one table to another?", + "description": "Knowledgebase article on how to insert all rows from one table to another.", + "date": "2024-12-17", + "tags": [ + "Data Ingestion" + ], + "keywords": [ + "Insert from a table" + ] + }, + { + "date": "2023-10-25", + "title": "About Quotas and Query complexity", + "tags": [ + "Managing Cloud" + ], + "keywords": [ + "Quotas", + "Query Complexity" + ], + "description": "Quotas and Query Complexity are powerful ways to limit and restrict what users can do in ClickHouse. This KB article shows examples on how to apply these two different approaches." + }, + { + "title": "Does ClickHouse support multi-region replication?", + "description": "The short answer is yes. However, we recommend keeping latency between all regions/datacenters in two-digit range, otherwise write performance will suffer as it goes through distributed consensus protocol.", + "date": "2022-04-22", + "tags": [ + "Deployments and Scaling", + "Managing Cloud" + ] + }, + { + "title": "Synchronous data reading", + "description": "The new setting `allow_asynchronous_read_from_io_pool_for_merge_tree` allows the number of reading threads (streams) to be higher than the number of threads in the rest of the query execution pipeline.", + "date": "2023-03-01", + "tags": [ + "Settings", + "Performance and Optimizations" + ], + "keywords": [ + "Synchronous", + "Asynchronous", + "Data Reading" + ] + }, + { + "title": "Why not use something like MapReduce?", + "description": "We can refer to systems like MapReduce as distributed computing systems in which the reduce operation is based on distributed sorting. The most common open-source solution in this class is Apache Hadoop.", + "date": "2021-09-01", + "tags": [ + "Concepts" + ], + "keywords": [ + "MapReduce" + ] + }, + { + "title": "Resolving SSL Certificate Verify Error in ClickHouse", + "description": "Learn how to resolve the SSL Exception `CERTIFICATE_VERIFY_FAILED` error.", + "date": "2023-05-02", + "tags": [ + "Security and Authentication", + "Errors and Exceptions" + ], + "keywords": [ + "Error", + "SSL Certificate" + ] + }, + { + "title": "Are Materialized Views inserted synchronously?", + "description": "This KB article explores whether Materialized Views are inserted synchronously", + "date": "2023-03-01", + "tags": [ + "Data Modelling" + ], + "keywords": [ + "Materialized View" + ] + }, + { + "title": "How to ingest Parquet files from an S3 bucket", + "description": "Learn the basics of using the S3 table engine in ClickHouse to ingest and query Parquet files from an S3 bucket, including setup, access permissions, and data import examples.", + "date": "2023-03-22", + "tags": [ + "Data Ingestion" + ], + "keywords": [ + "Parquet", + "S3 Bucket" + ] + }, + { + "title": "How to confirm if a Projection is used by the query?", + "date": "2022-07-10", + "description": "Learn how to check if a projection is used in ClickHouse queries by testing with sample data and using EXPLAIN to verify projection usage.", + "tags": [ + "Data Modelling" + ], + "keywords": [ + "Projection" + ] + }, + { + "title": "How to Export Data from ClickHouse to a File", + "description": "Learn various methods to export data from ClickHouse, including `INTO OUTFILE`, the File table engine, and command-line redirection.", + "date": "2023-03-22", + "tags": [ + "Data Export" + ], + "keywords": [ + "Exporting Data", + "INTO OUTFILE", + "File Table Engine" + ] + }, + { + "date": "2025-01-16", + "title": "How do I remove the default user?", + "description": "Learn how to remove the default user when running ClickHouse Server.", + "tags": [ + "Server Admin" + ], + "words": [ + "Remove Default User", + "ClickHouse Server" + ] + }, + { + "title": "Improving Map Lookup Performance in ClickHouse", + "description": "Learn how to optimize Map column lookups in ClickHouse for better query performance by materializing specific keys as standalone columns.", + "date": "2022-10-30", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Map Performance" + ] + }, + { + "title": "How to Verify Query Cache Usage in ClickHouse", + "description": "Learn how to check if query cache is being utilized in ClickHouse using `clickhouse-client` trace logs or SQL commands.", + "date": "2023-06-07", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Query Cache" + ] + }, + { + "title": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", + "description": "How to set up ClickHouse on Docker with ODBC to connect to a Microsoft SQL Server (MSSQL) database", + "date": "2024-05-29", + "tags": [ + "Native Clients and Interfaces" + ], + "keywords": [ + "Docker", + "ODBC", + "Microsoft SQL Server", + "MSSQL" + ] + }, + { + "title": "Importing and Querying JSON Array Objects in ClickHouse", + "description": "Learn how to import JSON array objects into ClickHouse and perform advanced queries using JSON functions and array operations.", + "date": "2023-03-24", + "tags": [ + "Data Formats" + ], + "keywords": [ + "JSON Array Objects" + ] + }, + { + "date": "2024-02-14", + "title": "How to achieve data read consistency in ClickHouse?", + "description": "Learn how to ensure data consistency when reading from ClickHouse, whether you're connected to the same node or a random node.", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Read Consistency" + ] + }, + { + "title": "Importing GeoJSON with a deeply nested object array", + "description": "\u201cImporting GeoJSON with a deeply nested object array\u201c", + "date": "2024-12-18", + "tags": [ + "Data Formats" + ], + "keywords": [ + "GeoJSON" + ] + }, + { + "title": "Simple example flow for extracting JSON data using a landing table with a Materialized View", + "description": "Simple example flow for extracting JSON data using a landing table with a Materialized View", + "date": "2024-05-20", + "tags": [ + "Data Formats" + ], + "keywords": [ + "JSON", + "Landing Table", + "Materialized View" + ] + }, + { + "title": "How to Identify Queries Using Materialized Views in ClickHouse", + "description": "Learn how to query ClickHouse logs to identify all queries involving Materialized Views within a specified time range.", + "date": "2023-03-24", + "tags": [ + "System Tables" + ], + "keywords": [ + "Materialized Views", + "create_table_query" + ] + }, + { + "date": "2023-01-14", + "title": "Comparing metrics between queries in decibels", + "description": "A query to compare metrics between two queries in ClickHouse.", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "compare queries", + "compare metrics", + "query performance" + ] + }, + { + "date": "2023-06-07", + "title": "Automatic schema migration tools for ClickHouse", + "description": "Learn about automatic schema migration tools for ClickHouse and how to manage changing database schemas over time.", + "tags": [ + "Tools and Utilities" + ], + "keywords": [ + "Automatic Schema Migration" + ] + }, + { + "title": "How to Validate if Two Queries Return the Same Result-sets", + "description": "Learn how to validate that two ClickHouse queries produce identical result-sets using hash functions and comparison techniques.", + "date": "2023-05-04", + "tags": [ + "Functions" + ], + "keywords": [ + "Validate", + "Resultsets", + "Hash Functions" + ] + }, + { + "title": "Python quick example using HTTP requests module", + "description": "An example using Python and requests module to write and read to ClickHouse", + "date": "2022-07-10", + "tags": [ + "Native Clients and Interfaces" + ], + "keywords": [ + "Python" + ] + }, + { + "title": "Backing up a specific partition", + "description": "How can I backup a specific partition in ClickHouse?", + "date": "2024-02-14", + "tags": [ + "Managing Data" + ], + "keywords": [ + "Backup", + "Partition" + ] + }, + { + "title": "Is it possible to delete old records from a ClickHouse table?", + "description": "The short answer is \"yes\". ClickHouse has multiple mechanisms that allow freeing up disk space by removing old data. Each mechanism is aimed for different scenarios.", + "date": "2022-10-19", + "tags": [ + "Deleting Data" + ], + "keywords": [ + "Delete Old Records" + ] + }, + { + "title": "How to Create a ClickHouse Dictionary with String Keys and Values", + "description": "Learn how to create a ClickHouse dictionary using string keys and values from a MergeTree table as the source, with examples of setup and usage.", + "date": "2023-07-10", + "tags": [ + "Data Modelling" + ], + "keywords": [ + "Dictionary", + "String Keys", + "String Values" + ] + }, + { + "date": "2023-08-13", + "title": "Does ClickHouse support row-level and column-level security?", + "description": "Learn about row-level and column-level access restrictions in ClickHouse and ClickHouse Cloud, and how to implement role-based access control (RBAC) with policies.", + "tags": [ + "Security and Authentication" + ], + "keywords": [ + "Row-Level", + "Column-Level", + "Security" + ] + }, + { + "title": "Can you PIVOT in ClickHouse?", + "description": "ClickHouse doesn't have a PIVOT clause, but we can get close to this functionality using aggregate function combinators. Let's see how to do this using the UK housing prices dataset.", + "date": "2024-12-11", + "tags": [ + "Data Modelling", + "Core Data Concepts" + ], + "keywords": [ + "PIVOT", + "Aggregate Function Combinators" + ] + }, + { + "title": "Resolving \"Cannot Append Data in Parquet Format\" Error in ClickHouse", + "description": "Are you getting the error \"Cannot append data in format Parquet to file\" error in ClickHouse? Let's take a look at how to resolve it.", + "date": "2023-03-25", + "tags": [ + "Errors and Exceptions", + "Data Formats" + ], + "keywords": [ + "Parquet", + "Cannot Append Data" + ] + }, + { + "title": "Adding a column to a table", + "description": "In this guide, we'll learn how to add a column to an existing table.", + "date": "2024-12-18", + "tags": [ + "Data Modelling" + ], + "keywords": [ + "Add Column" + ] + }, + { + "title": "Resolving \"Too Many Parts\" Error in ClickHouse", + "description": "Learn how to address the \"Too many parts\" error in ClickHouse by optimizing insert rates, configuring MergeTree settings, and managing partitions effectively.", + "date": "2023-03-20", + "tags": [ + "Errors and Exceptions" + ], + "keywords": [ + "Too many parts" + ] + }, + { + "title": "How to Check Your ClickHouse Cloud Service State", + "description": "Learn how to use the ClickHouse Cloud API to check if your service is stopped, idle, or running without waking it up.", + "date": "2023-11-16", + "tags": [ + "Managing Cloud" + ], + "keywords": [ + "Cloud Service State" + ] + }, + { + "title": "How to connect to ClickHouse using SSH Keys", + "description": "How to connect to ClickHouse and ClickHouse Cloud using SSH Keys", + "date": "2024-07-25", + "tags": [ + "Managing Cloud", + "Security and Authentication" + ], + "keywords": [ + "Cloud", + "SSH" + ] + }, + { + "title": "How do I resolve Ingest Failures After ClickHouse 23.9 Release?", + "description": "Learn how to resolve ingest failures caused by stricter grant checking introduced in ClickHouse 23.9 for tables using `async_inserts`. Update grants to fix errors.", + "date": "2022-11-17", + "tags": [ + "Errors and Exceptions" + ], + "keywords": [ + "GRANT", + "Permission Errors" + ] + }, + { + "title": "How to Identify the Most Expensive Queries in ClickHouse", + "description": "Learn how to use the `query_log` table in ClickHouse to identify the most memory and CPU-intensive queries across distributed nodes.", + "date": "2023-03-26", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Expensive Queries" + ] + }, + { + "date": "2023-03-17", + "title": "Useful queries for troubleshooting", + "description": "A collection of handy queries for troubleshooting ClickHouse, including monitoring table sizes, long-running queries, and errors.", + "tags": [ + "Settings" + ], + "keywords": [ + "Useful Queries" + ] + }, + { + "title": "How can I use the new JSON Data Type with Kafka?", + "description": "Learn how to load JSON messages from Apache Kafka directly into a single JSON column in ClickHouse using the Kafka table engine and JSON data type.", + "date": "2024-11-06", + "tags": [ + "Data Formats", + "Data Ingestion" + ] + }, + { + "title": "How to create a table that can query multiple remote clusters", + "description": "How to create a table that can query multiple remote clusters", + "date": "2024-07-03", + "tags": [ + "Deployments and Scaling" + ], + "keywords": [ + "Query", + "Remote Cluster" + ] + }, + { + "title": "Fix the Developer Verification Error in MacOS", + "description": "Learn how to resolve the MacOS developer verification error when running ClickHouse commands, using either System Settings or the terminal.", + "date": "2024-01-09", + "tags": [ + "Errors and Exceptions" + ], + "keywords": [ + "Developer Verification", + "MacOS" + ] + }, + { + "title": "Terraform example on how to use Cloud API", + "description": "This covers an example of how you can use terraform to create/delete clusters using the API", + "Date": "2023-09-02", + "tags": [ + "Native Clients and Interfaces" + ], + "keywords": [ + "Terraform" + ] + }, + { + "title": "How to Enable SSL with Let's Encrypt on a Single ClickHouse Server", + "description": "Learn how to set up SSL for a single ClickHouse server using Let's Encrypt, including certificate issuance, configuration, and validation.", + "date": "2024-12-11", + "tags": [ + "Security and Authentication" + ], + "keywords": [ + "SSL", + "Let/`s Encrypt" + ] + }, + { + "title": "How to Ignore Incorrect Settings in ClickHouse", + "description": "Learn how to use the `skip_check_for_incorrect_settings` option to allow ClickHouse to start even when user-level settings are specified incorrectly.", + "date": "2023-03-01", + "tags": [ + "Settings" + ], + "keywords": [ + "Ignore Incorrect Settings" + ] + }, + { + "title": "ODBC authentication failed error when using the Power BI ClickHouse connector", + "description": "ODBC authentication failed error when using the Power BI ClickHouse connector", + "date": "2024-07-10", + "tags": [ + "Native Clients and Interfaces", + "Errors and Exceptions" + ], + "keywords": [ + "ODBC", + "Power BI Connector", + "Authentication Failed" + ] + }, + { + "date": "2025-01-10", + "title": "Why is ClickHouse logging so verbose by default?", + "description": "Learn why the ClickHouse developers chose to set a verbose logging level by default.", + "tags": [ + "Settings" + ], + "keywords": [ + "Default Logging" + ] + }, + { + "date": "2023-06-07", + "title": "How do I view the number of active or queued mutations?", + "description": "Monitor the number of active or queued mutations in ClickHouse, especially when performing `ALTER` or `UPDATE` operations. Use the `system.mutations` table for tracking mutations.", + "tags": [ + "System Tables" + ], + "keywords": [ + "Active Mutations", + "Queued Mutations" + ] + }, + { + "title": "Alter User Settings Exception", + "description": "Handing the an exception thrown when altering user settings", + "date": "2023-08-26", + "tags": [ + "Settings", + "Errors and Exceptions" + ], + "keywords": [ + "Exception", + "User Settings" + ] + }, + { + "title": "Configuring CAP_IPC_LOCK and CAP_SYS_NICE Capabilities in Docker", + "description": "Learn how to resolve Docker capability warnings for `CAP_IPC_LOCK` and `CAP_SYS_NICE` when running ClickHouse in a container.", + "date": "2023-06-07", + "tags": [ + "Errors and Exceptions" + ], + "keywords": [ + "Docker", + "CAP_IPC_LOCK", + "CAP_SYS_NICE" + ] + }, + { + "title": "How to calculate the ratio of empty/zero values in every column in a table", + "description": "Learn how to calculate the ratio of empty or zero values in every column of a ClickHouse table to optimize sparse column serialization.", + "date": "2023-05-18", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Empty/Zero Ratio", + "Calculate" + ] + }, + { + "title": "Managing ClickHouse Cloud Service with API and cURL", + "description": "Learn how to start, stop, and resume a ClickHouse Cloud service using API endpoints and cURL commands.", + "date": "2023-06-07", + "tags": [ + "Managing Cloud", + "Tools and Utilities" + ], + "keywords": [ + "cURL", + "Manage Cloud", + "ClickHouse API" + ] + }, + { + "date": "2023-09-08", + "description": "Let's learn how to change your billing address in ClickHouse Cloud.", + "title": "How do I change my Billing Contact in ClickHouse Cloud?", + "tags": [ + "Managing Cloud" + ], + "keywords": [ + "Change Billing Contact", + "ClickHouse Cloud" + ] + }, + { + "title": "Mapping Windows Active Directory security groups to ClickHouse roles", + "description": "Example of mapping Windows Active Directory security groups to ClickHouse roles", + "date": "2024-05-20", + "tags": [ + "Tools and Utilities" + ], + "keywords": [ + "Windows" + ] + }, + { + "title": "How to output send logs level traces to file using the clickhouse-client", + "description": "How to output send logs level traces to file using the clickhouse-client", + "date": "2024-11-21", + "tags": [ + "Data Export" + ], + "keywords": [ + "logs level traces", + "clickhouse-client" + ] + }, + { + "title": "What is a columnar database?", + "description": "A columnar database stores the data of each column independently. This allows reading data from disk only for those columns that are used in any given query.", + "date": "2021-09-01", + "tags": [ + "Core Data Concepts" + ], + "keywords": [ + "Columnar Database" + ] + }, + { + "title": "Differences Between Official and 3rd-Party ClickHouse Builds", + "description": "Understand the key differences between official ClickHouse builds and 3rd-party builds, including updates, compatibility, and security considerations.", + "date": "2023-06-26", + "tags": [ + "Concepts" + ], + "keywords": [ + "official builds", + "third-party builds" + ] + }, + { + "date": "2023-03-01", + "title": "Capturing server logs of queries at the client", + "description": "Learn how to capture server logs at the client level, even with different log settings, using the `send_logs_level` client setting.", + "tags": [ + "Server Admin" + ], + "keywords": [ + "Server Logs" + ] + }, + { + "date": "2023-03-24", + "title": "How to quickly recreate a small table across different terminals", + "description": "Learn how to quickly recreate a small table and its data across different terminals using copy/paste for development environments.", + "tags": [ + "Tools and Utilities" + ], + "keywords": [ + "Recreate Table", + "Terminals" + ] + }, + { + "title": "How do I convert Files from Parquet to CSV or JSON?", + "description": "Learn how to use ClickHouse's `clickhouse-local` tool to easily convert Parquet files to CSV or JSON formats.", + "date": "2023-03-22", + "tags": [ + "Data Sources", + "Data Formats" + ], + "keywords": [ + "Converting", + "Parquet", + "CSV", + "JSON" + ] + }, + { + "title": "How do I export MySQL Data to Parquet, CSV, or JSON Using ClickHouse", + "description": "Learn how to use the `clickhouse-local` tool to export MySQL data into formats like Parquet, CSV, or JSON quickly and efficiently.", + "date": "2023-03-21", + "tags": [ + "Data Formats", + "Data Export" + ], + "keywords": [ + "MySQL", + "Parquet", + "CSV", + "JSON" + ] + }, + { + "date": "2023-05-08", + "title": "A Python client working example for connecting to ClickHouse Cloud Service", + "description": "Learn how to connect to ClickHouse Cloud Service using Python with a step-by-step example using the clickhouse-connect driver.", + "tags": [ + "Language Clients" + ], + "keywords": [ + "Python", + "ClickHouse Cloud" + ] + }, + { + "title": "Using ClickHouse for Log Analytics", + "description": "ClickHouse is popular for logs and metrics analysis because of the real-time analytics capabilities provided. Ready to find out more?", + "date": "2023-05-10", + "tags": [ + "Use Cases" + ], + "keywords": [ + "Log Analytics" + ] + }, + { + "title": "What does \u201cClickHouse\u201d mean?", + "description": "Curious what ClickHouse means? Take a look inside this knowledge base article to find out!", + "date": "2021-09-01", + "tags": [ + "Concepts" + ], + "keywords": [ + "ClickHouse Meaning" + ] + }, + { + "title": "How do I Install ClickHouse on Windows 10?", + "description": "Learn how to install and test ClickHouse on Windows 10 using WSL 2. Includes setup, troubleshooting, and running a test environment.", + "date": "2023-04-24", + "tags": [ + "Tools and Utilities" + ], + "keywords": [ + "Windows 10" + ] + }, + { + "title": "How to Increase the Number of Threads in ClickHouse", + "description": "Learn how to configure the Global Thread pool in ClickHouse by adjusting settings like `max_thread_pool_size`, `thread_pool_queue_size`, and `max_thread_pool_free_size`.", + "date": "2023-03-01", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Available Threads" + ] + }, + { + "title": "What is OLAP?", + "description": "OLAP stands for Online Analytical Processing. It is a broad term that can be looked at from two perspectives: technical and business.", + "date": "2021-09-01", + "tags": [ + "Concepts" + ], + "keywords": [ + "OLAP" + ] + }, + { + "title": "Change the prompt in clickhouse-client", + "description": "This article explains how to change the prompt in your Clickhouse client and clickhouse-local terminal window from :) to a prefix followed by :)", + "date": "2023-11-16", + "tags": [ + "Settings", + "Native Clients and Interfaces" + ], + "keywords": [ + "ClickHouse Client", + "Change Prompt" + ] + }, + { + "title": "How to filter a ClickHouse table by an array-column?", + "description": "Knowledgebase article on how to filter a ClickHouse table by an array-column.", + "date": "2024-12-17", + "tags": [ + "Data Modelling", + "Functions" + ], + "keywords": [ + "Filter", + "Array-Column" + ] + }, + { + "title": "How to use array join to extract and query varying attributes using map keys and values", + "description": "Simple example to illustrate how to use array join to extract and query varying attributes using map keys and values", + "date": "2024-06-21", + "tags": [ + "Functions" + ], + "keywords": [ + "arrayJoin" + ] + }, + { + "date": "2023-03-24", + "title": "How can I do partitioned writes by year and month on S3?", + "description": "Learn how to write partitioned data by year and month to an S3 bucket in ClickHouse, using a custom path structure for organizing the data.", + "tags": [ + "Data Export", + "Native Clients and Interfaces" + ], + "keywords": [ + "S3", + "Partitioned Writes" + ] + }, + { + "title": "Why is my primary key not used? How can I check?", + "description": "Covers a common reason why a primary key is not used in ordering and how we can confirm", + "date": "2024-12-12", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Primary Key" + ] + }, + { + "title": "Tips and tricks on optimizing basic data types in ClickHouse", + "description": "Tips and tricks on optimizing basic data types in ClickHouse", + "date": "2024-07-02", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Optimizing Basic Data Types" + ] + }, + { + "title": "How to import JSON into ClickHouse?", + "description": "There are multiple JSON variations among them, but the most commonly used for data ingestion is JSONEachRow. It expects one JSON object per row, each object separated by a newline.", + "date": "2023-03-20", + "tags": [ + "Data Ingestion" + ], + "keywords": [ + "Import JSON" + ] + }, + { + "title": "Resolving Timeout Errors with `remote` and `remoteSecure` Table Functions", + "description": "Learn how to fix timeout errors when using `remote` or `remoteSecure` table functions in ClickHouse by adjusting the connection timeout settings.", + "date": "2023-03-20", + "tags": [ + "Errors and Exceptions" + ], + "keywords": [ + "Connection tries failed" + ] + }, + { + "title": "Common RBAC queries", + "description": "Queries to help grant specific permissions to users.", + "date": "2023-09-28", + "tags": [ + "Security and Authentication", + "Managing Cloud" + ], + "keywords": [ + "RBAC", + "Queries" + ] + }, + { + "title": "How to Measure Query Processing Time Without Returning Rows", + "description": "Learn how to use the `FORMAT Null` option in ClickHouse to measure query processing time without returning any rows to the client.", + "date": "2023-06-07", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Query Processing Time" + ] + }, + { + "title": "Marketplace", + "description": "Learn how to use CSP marketplaces to subscribe to ClickHouse Cloud.", + "date": "2022-12-06", + "tags": [ + "Managing Cloud" + ], + "keywords": [ + "CSP Marketplaces" + ] + }, + { + "title": "How do I use NodeJS with @clickhouse/client", + "description": "Learn how to use @clickhouse/client in a Node.js application to interact with ClickHouse and perform queries.", + "date": "2023-11-22", + "tags": [ + "Language Clients" + ], + "keywords": [ + "NodeJS" + ] + }, + { + "title": "How to Ingest Data from Kafka into ClickHouse", + "description": "Learn how to ingest data from a Kafka topic into ClickHouse using the Kafka table engine, materialized views, and MergeTree tables.", + "date": "2024-04-27", + "tags": [ + "Data Ingestion" + ], + "keywords": [ + "Kafka" + ] + }, + { + "title": "Execute SYSTEM Statements on All Nodes in ClickHouse Cloud", + "description": "Learn how to use `ON CLUSTER` and `clusterAllReplicas` to execute SYSTEM statements and queries across all nodes in a ClickHouse Cloud service.", + "date": "2023-03-01", + "tags": [ + "Deployments and Scaling" + ], + "keywords": [ + "clusterAllReplicas" + ] + }, + { + "title": "Identifying Expensive Queries by Memory Usage in ClickHouse", + "description": "Learn how to use the `system.query_log` table to find the most memory-intensive queries in ClickHouse, with examples for clustered and standalone setups.", + "date": "2023-06-07", + "tags": [ + "Performance and Optimizations" + ], + "keywords": [ + "Expensive Queries", + "Memory Usage" + ] + }, + { + "title": "Who is using ClickHouse?", + "description": "Being an open-source product makes this question not so straightforward to answer. You do not have to tell anyone if you want to start using ClickHouse, you just go grab source code or pre-compiled packages.", + "date": "2021-09-01", + "tags": [ + "Use Cases" + ] + }, + { + "title": "How do I solve TOO MANY PARTS error during an INSERT...SELECT?", + "description": "Resolve the TOO_MANY_PARTS error in ClickHouse during an `INSERT...SELECT` by tuning expert-level settings for larger blocks and increasing partition thresholds.", + "date": "2023-07-21", + "tags": [ + "Settings", + "Errors and Exceptions" + ] + }, + { + "title": "Which ClickHouse version to use in production?", + "description": "First of all, let\u2019s discuss why people ask this question in the first place. There are two key reasons...", + "date": "2021-09-01", + "tags": [ + "Concepts", + "Performance and Optimizations" + ], + "keywords": [ + "Production Version" + ] + }, + { + "title": "Recommended Maximum Databases, Tables, Partitions, and Parts in ClickHouse", + "description": "Learn the recommended maximum limits for databases, tables, partitions, and parts in a ClickHouse cluster to ensure optimal performance.", + "date": "2021-09-01", + "tags": [ + "Performance and Optimizations", + "Deployments and Scaling" + ], + "keywords": [ + "limits" + ] + }, + { + "title": "AWS PrivateLink setup to expose private RDS for ClickPipes", + "description": "Setup steps to expose a private RDS via AWS PrivateLink to ClickPipes.", + "date": "2024-11-27", + "tags": [ + "Security and Authentication", + "Managing Cloud" + ], + "keywords": [ + "AWS PrivateLink", + "Private RDS", + "ClickPipes" + ] + }, + { + "title": "AWS PrivateLink setup to expose MSK for ClickPipes", + "description": "Setup steps to expose a private MSK via MSK multi-VPC connectivity to ClickPipes.", + "date": "2025-4-15", + "tags": [ + "Security and Authentication", + "Managing Cloud" + ], + "keywords": [ + "AWS PrivateLink", + "MSK", + "ClickPipes" + ] + }, + { + "title": "How to use the exchange command to switch tables", + "description": "How to use the exchange command to switch tables", + "date": "2024-11-21", + "tags": [ + "Managing Data" + ], + "keywords": [ + "EXCHANGE" + ] + }, + { + "title": "DB::Exception: Part XXXXX intersects previous part YYYYY. It is a bug or a result of manual intervention in the ZooKeeper data.", + "date": "2023-05-02", + "description": "This article explains how to resolve the DB::Exception error related to intersecting parts in ClickHouse, often caused by a race condition or manual intervention in the ZooKeeper data.", + "tags": [ + "Errors and Exceptions", + "System Tables" + ], + "keywords": [ + "Part Intersects", + "system.replicas" + ] + }, + { + "title": "Setting a limit on query execution time", + "description": "How to enforce limit on max query execution time", + "date": "2022-07-10", + "tags": [ + "Managing Cloud", + "Settings" + ] + }, + { + "date": "2023-03-24", + "title": "How to check what code is currently running on a server?", + "description": "ClickHouse provides introspection tools like `system.stack_trace` for inspecting what code is currently running on each server thread, helping with debugging and performance monitoring.", + "tags": [ + "Server Admin" + ] + }, + { + "title": "JSON Extract example", + "description": "A short example on how to extract base types from JSON", + "date": "2021-09-01", + "tags": [ + "Data Formats" + ], + "keywords": [ + "JSON", + "extract base types" + ] + }, + { + "title": "Can I use ClickHouse as a key-value storage?", + "description": "The short answer is **\"no\"**. The key-value workload is among top positions in the list of cases when **NOT** to use ClickHouse.", + "date": "2021-09-01", + "tags": [ + "Concepts", + "Use Cases" + ], + "keywords": [ + "Key-Value Storage" + ] + }, + { + "date": "2024-04-22", + "title": "How to build LLVM and clang on Linux", + "description": "Commands to build LLVM and clang on Linux.", + "tags": [ + "Community", + "Tools and Utilities" + ], + "keywords": [ + "contributing", + "llvm", + "clang" + ] + }, + { + "title": "How do I export PostgreSQL data to Parquet, CSV or JSON?", + "date": "2023-03-22", + "description": "Learn how to export PostgreSQL data to Parquet, CSV, or JSON formats using `clickhouse-local` with various examples.", + "tags": [ + "Data Export", + "Data Formats" + ], + "keywords": [ + "PostgreSQL", + "Parquet", + "CSV", + "JSON" + ] + }, + { + "title": "Can I use ClickHouse as a time-series database?", + "description": "ClickHouse is a generic data storage solution for OLAP workloads, while there are many specialized time-series database management systems.", + "date": "2021-09-01", + "tags": [ + "Concepts" + ], + "keywords": [ + "Time-Series Database" + ] + }, + { + "title": "Using Filtered Aggregates in ClickHouse", + "description": "Learn how to use filtered aggregates in ClickHouse with `-If` and `-Distinct` aggregate combinators to simplify query syntax and enhance analytics.", + "date": "2023-03-01", + "tags": [ + "Functions" + ], + "keywords": [ + "Filtered Aggregates" + ] + }, + { + "title": "Mapping of metrics used in system.dashboards to Prometheus metrics in `system.custom_metrics`", + "description": "Mapping of metrics used in system.dashboards to Prometheus metrics in system.custom_metrics", + "date": "2024-07-23", + "tags": [ + "System Tables" + ], + "keywords": [ + "Metrics", + "system.dashboards", + "system.custom_metrics" + ] + } ] \ No newline at end of file